PySide6百炼成真(6)

ops/2024/11/12 23:21:25/

布局控件

布局用处的介绍
常用的三种布局

  • 垂直布局
  • 水平布局
  • 格子布局
    项目:使用格子布局重新制作一个计算器
    项目:重新制作进制转换器

其实还有一种布局QFormLayout但是后期开发用的比较少

from PySide6.QtWidgets import QApplication, QWidget, QVBoxLayout, QSlider, QLabel, QPushButton, QLineEdit, QHBoxLayoutclass MyWindow(QWidget):def __init__(self):super().__init__()# 登录页面self.mainLayout = QVBoxLayout() # 垂直布局self.userLayout = QHBoxLayout()self.userLayout.addWidget(QLabel('用户名'))self.userLayout.addWidget(QLineEdit())self.mainLayout.addLayout(self.userLayout)self.passwordLayout = QHBoxLayout()self.passwordLayout.addWidget(QLabel('密码'))self.passwordLayout.addWidget(QLineEdit())self.mainLayout.addLayout(self.passwordLayout)self.mainLayout.addWidget(QPushButton('登录'))self.setLayout(self.mainLayout)if __name__ == '__main__':app = QApplication([])try:window = MyWindow()window.show()except FileNotFoundError as e:print(e)except RuntimeError as e:print(f"Error loading UI: {e}")app.exec()

在这里插入图片描述
表单布局前期学习的时候会用的比较多

from PySide6.QtWidgets import QApplication, QWidget, QVBoxLayout, QSlider, QLabel, QPushButton, QLineEdit, QHBoxLayout, \QFormLayoutclass MyWindow(QWidget):def __init__(self):super().__init__()# 登录页面self.mainLayout = QVBoxLayout() # 垂直布局# self.userLayout = QHBoxLayout()# self.userLayout.addWidget(QLabel('用户名'))# self.userLayout.addWidget(QLineEdit())# self.mainLayout.addLayout(self.userLayout)## self.passwordLayout = QHBoxLayout()# self.passwordLayout.addWidget(QLabel('密码'))# self.passwordLayout.addWidget(QLineEdit())# self.mainLayout.addLayout(self.passwordLayout)self.formLayout = QFormLayout()self.formLayout.addRow('用户名',QLineEdit())self.formLayout.addRow('密码',QLineEdit())self.formLayout.addWidget(QPushButton('登录'))self.mainLayout.addLayout(self.formLayout)self.setLayout(self.mainLayout)if __name__ == '__main__':app = QApplication([])try:window = MyWindow()window.show()except FileNotFoundError as e:print(e)except RuntimeError as e:print(f"Error loading UI: {e}")app.exec()

在这里插入图片描述
格子布局

from PySide6.QtWidgets import QApplication, QWidget, QVBoxLayout, QSlider, QLabel, QPushButton, QLineEdit, QHBoxLayout, \QFormLayout, QGridLayoutclass MyWindow(QWidget):def __init__(self):super().__init__()# 登录页面self.mainLayout = QVBoxLayout() # 垂直控件self.gridLayout = QGridLayout() # 网格控件# self.gridLayout.addWidget(QPushButton('1'),0,0)# self.gridLayout.addWidget(QPushButton('2'),0,1)# self.gridLayout.addWidget(QPushButton('3'),0,2)# self.gridLayout.addWidget(QPushButton('4'),1,0,1,3) #1,3 一行 三列self.gridLayout.addWidget(QLabel('用户名'),0,0)self.gridLayout.addWidget(QLineEdit(),0,1)self.gridLayout.addWidget(QLabel('密码'),1,0)self.gridLayout.addWidget(QLineEdit(),1,1)self.gridLayout.addWidget(QPushButton('登录'),2,0,1,2)self.mainLayout.addLayout(self.gridLayout)self.setLayout(self.mainLayout)if __name__ == '__main__':app = QApplication([])try:window = MyWindow()window.show()except FileNotFoundError as e:print(e)except RuntimeError as e:print(f"Error loading UI: {e}")app.exec()

在这里插入图片描述


http://www.ppmy.cn/ops/132690.html

相关文章

基于混沌序列和小波变换层次化编码的遥感图像加密算法matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 5.完整程序 1.程序功能描述 基于小波变换层次化编码的遥感图像加密算法matlab仿真。分析加解密处理后图像的直方图,相关性,熵,解密后图像质量等。 2.测试…

sql速度优化多条合并为一条语句

在 SQL 中,结合 CASE 和 SUM 可以实现根据特定条件进行分组求和。在 ThinkPHP 中也可以使用类似的方式进行数据库查询操作。 例如,假设有一个销售数据表,包含字段 product_id (产品 ID)、 quantity (销…

B2119 删除单词后缀

B2119 删除单词后缀 #include <iostream> using namespace std; # include <string.h> #include <ctype.h> #include <algorithm> #include <string.h> int main(){ string word; cin>>word; if(word.size()> 2 && word.…

Spring Boot 注解大全:全面解析 Spring Boot 常用注解及其应用场景

Spring Boot 注解大全:全面解析 Spring Boot 常用注解及其应用场景 简介 Spring Boot 是一个基于 Spring 框架的简化开发框架,它旨在简化 Spring 应用的初始搭建和开发过程。Spring Boot 提供了一系列的注解,使得开发者可以更加方便地进行应用开发和配置。本文将详细介绍 S…

vue2 和 vue3的区别

1.生命周期不一样 vue2 vue3 beforeCreatecreatedbeforeMountmountedbeforeUpdateupdatedbeforeDestroyDestroy onBeforeMount()onMounted()onBeforeUpdate()onUpdated()onBeforeUnmount()onUnmounted() 2.Composition组合式api Vue2是选项API&#xff08;Options API&…

Java与HTML中的标题、文本和图像

一、HTML中的标题 HTML标题标签的基础 在HTML中&#xff0c;标题使用<h1>到<h6>标签来定义&#xff0c;<h1>表示最高级别的标题&#xff0c;<h6>表示最低级别的标题。例如&#xff1a; html复制代码 <h1>这是一级标题</h1><h2>这是…

Ai绘画软件 Stable Diffusion 最新安装包(附安装包)

Stable Diffusion&#xff0c;作为近年来备受瞩目的AI图像生成工具&#xff0c;以其强大的文本到图像生成能力&#xff0c;正在逐步改变创意产业与商业应用的格局。随着Stable Diffusion 4.9的发布&#xff0c;这款工具在技术性能上取得了显著提升&#xff0c;以满足从专业研究…

轻型民用无人驾驶航空器安全操控------理论考试多旋翼部分笔记

官网&#xff1a;民用无人驾驶航空器综合管理平台 (caac.gov.cn) 说明&#xff1a;一是法规部分&#xff1b;二是多旋翼部分 本笔记全部来源于轻型民用无人驾驶航空器安全操控视频讲解平台 目录 官网&#xff1a;民用无人驾驶航空器综合管理平台 (caac.gov.cn) 一、轻型民用无人…