当前位置: 首页 > news >正文

PyQt6 表单布局Form Layout (QFormLayout)

锋哥原创的PyQt6视频教程:

2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计43条视频,包括:2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~、第2讲 PyQt6库和工具库QTDesigner安装与配置、第3讲 PyQt6第一个程序HelloWorld实现等,UP主更多精彩视频,请关注UP账号。icon-default.png?t=N7T8https://www.bilibili.com/video/BV11C4y1P7fj/

FormLayout控件表示表单布局,它的基类是QFormLayout,该控件以表单方式进行布局。

表单是一种网页中常见的与用户交互的方式,其主要由两列组成,第一列用来显示信息,给用户提示,而第二列需要用户进行输入或者选择

QFormLayout常用方法:

方法说明
addRow()添加行
insertRow()插入行
removeRow()删除行
getWidgetPosition()获取控件位置
getLayoutPosition()获取容器管理器位置
rowCount()获取行的总个数
setLayout()设置布局管理器的位置
setWidget()修改控件位置
takeRow()移除行但并不删除子控件
labelForField()标签操作
setRowWrapPolicy()设置行的包装策略
rowWrapPolicy()获取行的包装策略
setFormAlignment()对其方式,对整个表单进行设置
setLabelAlignment()对其方式,对标签(左侧区域)进行设置
formAlignment()对其方式,获取整个表单的对齐方式
labelAlignment()对其方式,获取标签布局标签(左侧)侧的对齐方式
setFieldGrowthPolicy()设置字段增长策略
fieldGrowthPolicy()获取字段增长策略

UI生成参考代码:

from PyQt6 import QtCore, QtGui, QtWidgetsclass Ui_Form(object):def setupUi(self, Form):Form.setObjectName("Form")Form.resize(649, 520)self.formLayoutWidget = QtWidgets.QWidget(parent=Form)self.formLayoutWidget.setGeometry(QtCore.QRect(110, 60, 471, 371))self.formLayoutWidget.setObjectName("formLayoutWidget")self.formLayout = QtWidgets.QFormLayout(self.formLayoutWidget)self.formLayout.setLabelAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)self.formLayout.setFormAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignTop)self.formLayout.setContentsMargins(20, 50, 20, 0)self.formLayout.setHorizontalSpacing(20)self.formLayout.setVerticalSpacing(30)self.formLayout.setObjectName("formLayout")self.label = QtWidgets.QLabel(parent=self.formLayoutWidget)self.label.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)self.label.setObjectName("label")self.formLayout.setWidget(0, QtWidgets.QFormLayout.ItemRole.SpanningRole, self.label)self.label_2 = QtWidgets.QLabel(parent=self.formLayoutWidget)self.label_2.setObjectName("label_2")self.formLayout.setWidget(1, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_2)self.lineEdit = QtWidgets.QLineEdit(parent=self.formLayoutWidget)self.lineEdit.setObjectName("lineEdit")self.formLayout.setWidget(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit)self.label_3 = QtWidgets.QLabel(parent=self.formLayoutWidget)self.label_3.setObjectName("label_3")self.formLayout.setWidget(2, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_3)self.lineEdit_2 = QtWidgets.QLineEdit(parent=self.formLayoutWidget)self.lineEdit_2.setObjectName("lineEdit_2")self.formLayout.setWidget(2, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit_2)self.label_4 = QtWidgets.QLabel(parent=self.formLayoutWidget)self.label_4.setObjectName("label_4")self.formLayout.setWidget(3, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_4)self.lineEdit_3 = QtWidgets.QLineEdit(parent=self.formLayoutWidget)self.lineEdit_3.setObjectName("lineEdit_3")self.formLayout.setWidget(3, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit_3)self.pushButton = QtWidgets.QPushButton(parent=self.formLayoutWidget)self.pushButton.setObjectName("pushButton")self.formLayout.setWidget(4, QtWidgets.QFormLayout.ItemRole.FieldRole, self.pushButton)self.retranslateUi(Form)QtCore.QMetaObject.connectSlotsByName(Form)def retranslateUi(self, Form):_translate = QtCore.QCoreApplication.translateForm.setWindowTitle(_translate("Form", "Form"))self.label.setText(_translate("Form", "用户注册"))self.label_2.setText(_translate("Form", "用户名:"))self.label_3.setText(_translate("Form", "密码:"))self.label_4.setText(_translate("Form", "确认密码:"))self.pushButton.setText(_translate("Form", "注册"))

相关文章:

PyQt6 表单布局Form Layout (QFormLayout)

锋哥原创的PyQt6视频教程: 2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计43条视频,包括:2024版 PyQt6 Python桌面开发 视频教程(无废话版…...

Python: any()函数

在Python中,any函数是一个内置函数,它接受一个可迭代对象作为参数,并返回一个布尔值。当可迭代对象中至少一个元素为真(非零、非空、非None等)时,any函数返回True;否则,返回False。 …...

一些AG10K FPGA 调试的建议-Douglas

PLL AGM FPGA 在配置成功时,PLL 已经完成锁定,lock 信号已经变高;如果原设计中用 lock 信号输出实现系统 reset 的复位功能,就不能正确完成上电复位;同时,为了保证 PLL 相移的稳定,我们需要在 P…...

【模型量化】神经网络量化基础及代码学习总结

1 量化的介绍 量化是减少神经网络计算时间和能耗的最有效的方法之一。在神经网络量化中,权重和激活张量存储在比训练时通常使用的16-bit或32-bit更低的比特精度。当从32-bit降低到8-bit,存储张量的内存开销减少了4倍,矩阵乘法的计算成本则二…...

次模和K次模是多项式可解吗?

次模是多项式可解吗 **是的,**次模函数的最优化问题通常是多项式时间可解的。这是因为次模性质导致了问题的结构,使得可以利用高效的算法进行求解。 具体来说,针对次模函数的最优化问题,例如极大化或极小化这样的目标函数&#xf…...

网络安全——SQL注入实验

一、实验目的要求: 二、实验设备与环境: 三、实验原理: 四、实验步骤: 五、实验现象、结果记录及整理: 六、分析讨论与思考题解答: 七、实验截图: 一、实验目的要求: 1、…...

【cocotb】【达坦科技DatenLord】Cocotb Workshop分享

https://www.bilibili.com/video/BV19e4y1k7EE/?spm_id_from333.337.search-card.all.click&vd_sourcefd0f4be6d0a5aaa0a79d89604df3154a 方便RFM实现 cocotb_test 替代makefile , 类似python 函数执行...

Kafka系列之:统计kafka集群Topic的分区数和副本数,批量增加topic副本数

Kafka系列之:统计kafka集群Topic的分区数和副本数,批量增加topic副本数 一、创建KafkaAdminClient二、获取kafka集群topic元信息三、获取每个topic的名称、分区数、副本数四、生成增加topic副本的json文件五、执行增加topic副本的命令六、确认topic增加副本是否成功一、创建K…...

开具实习证明:在线实习项目介绍

大数据在线实习项目,是在线上为学生提供实习经验的项目。我们希望能够帮助想要在毕业后从事数据科学类工作的学生更加顺利地适应从教室到职场的转换;也帮助那些在工作中需要处理数据、实现数据价值的其他职能的从业者高效快速地掌握每天都能用起来的数据…...

MFC逆向之CrackMe Level3 过反调试 + 写注册机

今天我来分享一下,过反调试的方法以及使用IDA还原代码 写注册机的过程 由于内容太多,我准备分为两个帖子写,这个帖子主要是写IDA还原代码,下一个帖子是写反调试的分析以及过反调试和异常 这个CrackMe Level3是一个朋友发我的,我也不知道他在哪里弄的,我感觉挺好玩的,对反调试…...

【Centos】

一、Virtualbox安装Centos 1、Virtualbox 下载地址: Virtualbox 2、Centos 下载地址: Centos 3、Virtualbox安装Centos教程 Virtualbox安装Centos教程: Virtualbox安装Centos教程...

1+X大数据平台运维职业技能等级证书中级

hadoop: 由于我的功能限制,我无法直接为您执行这些操作或提供实际的截图。但我可以为您提供一步步的指导,帮助您完成这些任务。 1. 解压JDK安装包到“/usr/local/src”路径,并配置环境变量。 - 解压JDK:tar -zxf jd…...

网络基础(五):网络层协议介绍

目录 一、网络层 1、网络层的概念 2、网络层功能 3、IP数据包格式 二、ICMP协议 1、ICMP的作用和功能 2、ping命令的使用 2.1ping命令的通用格式 2.2ping命令的常用参数 2.3TypeCode:查看不同功能的ICMP报文 2.4ping出现问题 3、Tracert 4、冲突域 5、…...

浅显易懂 @JsonIgnore 的作用

1.JsonIgnore作用   在json序列化/反序列化时将java bean中使用了该注解的属性忽略掉 2.这个注解可以用在类/属性上   例如:在返回user对象时,在pwd属性上使用这个注解,返回user对象时会直接去掉pwd这个字段,不管这个属性有没…...

【计算机设计大赛作品】诗意千年—唐朝诗人群像的数字展现_附源码—信息可视化赛道获奖项目深入剖析【可视化项目案例-20】

🎉🎊🎉 你的技术旅程将在这里启航! 记得看本专栏里顶置的可视化宝典导航贴哦! 🚀🚀 本专栏为可视化专栏,包含现有的所有可视化技术。订阅专栏用户在文章底部可下载对应案例完整源码以供大家深入的学习研究。 🎓 每一个案例都会提供完整代码和详细的讲解,不论你…...

「Swift」Xcode多Target创建

前言:我们日常开发中会使用多个环境,如Dev、UAT,每个环境对应的业务功能都不同,但每个环境之间都只存在较小的差异,所以此时可以使用创建多个Target来实现,每个Target对应这个一个App,可以实现一…...

Python文件命名规则:批量重命名与规则匹配的文件

我从一个旧的 iOS 项目中获得了一个文件夹,其中包含许多类似于 image.png image2x.png another-image.png another-image2x.png然而,由于该项目现在只需要 2x.png 图像,我已经删除了所有的文件没有 2x 的名称。 但是我现在想知道如何轻松…...

『npm』一条命令快速配置npm淘宝国内镜像

📣读完这篇文章里你能收获到 一条命令快速切换至淘宝镜像恢复官方镜像 文章目录 一、设置淘宝镜像源二、恢复官方镜像源三、查看当前使用的镜像 一、设置淘宝镜像源 npm config set registry https://registry.npm.taobao.org服务器建议全局设置 sudo npm config…...

Java EE 多线程之线程安全的集合类

文章目录 1. 多线程环境使用 ArrayList1. 1 Collections.synchronizedList(new ArrayList)1.2 CopyOnWriteArrayList 2. 多线程环境使用队列2.1 ArrayBlockingQueue2.2 LinkedBlockingQueue2.3 PriorityBlockingQueue2.4 TransferQueue 3. 多线程环境使用哈希表3.1 Hashtable3.…...

明明随机数

明明想在学校中请一些同学一起做一项问卷调查&#xff0c;为了实验的客观性&#xff0c;他先用计算机生成了N个1到1000之间的随机整数(N<100)&#xff0c;对于其中重复的数字&#xff0c;只保留一个&#xff0c;把其余相同的数去掉&#xff0c;不同的数对应着不同的学生的学…...

优思学院|如何建立公司运营指标体系?如何推行六西格玛改进运营指标?

关键绩效指标 (KPI) 是测量您团队或组织朝重要商业目标进展表现如何的量化指标&#xff0c;组织会在多个层面使用 KPI&#xff0c;这视乎您想要追踪何指标而定&#xff0c;您可以设定全组织的、特定团队的、或甚至是个人 KPI。 良好的KPI能让公司管理者掌握组织的营运是否进度…...

vue2 echarts不同角色多个类型数据的柱状图

前端代码&#xff1a; 先按照echarts插件。在页面里引用 import * as echarts from "echarts";设置div <div style"width:100%;height:250px;margin-top: 4px;" id"addressChart"></div>方法: addressEcharts() {const option {g…...

Mysql表的数据类型

数据类型 https://www.sjkjc.com/mysql/varchar/ MySQL 中的数据类型包括以下几个大类&#xff1a; 字符串类型 数字类型 日期和时间类型 二进制类型 地理位置数据类型 JSON 数据类型 MySQL 字符串数据类型 VARCHAR&#xff1a;纯文本字符串&#xff0c;字符串长度是可变的…...

c语言单向链表

看如下代码&#xff0c;这是一个完整的可运行的c源文件&#xff0c;要注意的点&#xff1a; c语言程序运行不一定需要头文件NULL其实是 (void*)0&#xff0c;把指针赋值成(void*)0,就是防止程序员不想该指针被引用的时候被引用&#xff0c;引用地址为0的值程序会引起系统中断&…...

『番外篇三』Swift “乱弹”之带索引遍历异步序列(AsyncSequence)

概览 在 Swift 开发中,我们往往在遍历集合元素的同时希望获得元素对应的索引。在本课中,我们将向小伙伴们展示除 enumerated() 方法之外的几种实现思路。在玩转普通集合之后,我们将用“魔法棒”进一步搞定异步序列带索引遍历的实现。 在本篇博主中,您将学到以下内容: 概…...

学习JVM

java虚拟机 流程&#xff1a;helloworld.java----(javac编译)----helloworld.class-------(java运行)——JVM——机器码JVM功能 *解释和运行 *内存管理 *即时编译&#xff08;跨平台-慢一点&#xff09;jit &#xff08;反复用到的代码 解释保存再内存里面&#xff09;…...

Oracle MongoDB

听课的时候第一次碰到&#xff0c;可以了解一下吧&#xff0c;就直接开了墨者学院的靶场 #oracle数据库 Oracle数据库注入全方位利用 - 先知社区 这篇写的真的很好 1.判断注入点 当时找了半天没找到 看样子是找到了&#xff0c;测试一下看看 id1 and 11 时没有报错 2.判断字段…...

Linux-RedHat系统-安装 中间件 Tuxedo

安装步聚 一、中间件安装包&#xff1a; tuxedo121300_64_Linux_01_x86 Tuxedo下载地址&#xff1a; Oracle Tuxedo Downloads 二、新建用户&#xff1a; &#xff08;创建Oracle用户时&#xff0c;需要root权限操作&#xff09; 创建用户&#xff1a; # useradd oracle …...

PHP中的依赖注入是怎样的?

依赖注入&#xff08;Dependency Injection&#xff0c;DI&#xff09;是一种设计模式&#xff0c;它用于解耦组件之间的依赖关系&#xff0c;提高代码的可维护性、可测试性和灵活性。在 PHP 中&#xff0c;依赖注入通常通过构造函数注入、方法注入或属性注入来实现。 以下是依…...

Python求小于m的最大10个素数

为了找到小于m的最大10个素数&#xff0c;我们首先需要确定m的值。然后&#xff0c;我们可以使用一个简单的算法来检查每一个小于m的数字是否是素数。 下面是一个Python代码示例&#xff0c;可以找到小于m的最大10个素数&#xff1a; def is_prime(n): if n < 1: …...

女生做网站编辑好吗/网站页面禁止访问

C代码管理没有规矩很难管理&#xff0c;不像类管理那样方便&#xff0c;我们一遍一遍的写代码但是重复的很多&#xff0c;如何管理自己写的C程序以供以后使用方便&#xff1f;因此好用的C代码管理小工具出现了&#xff0c;可用于代码管理&#xff0c;将计算机里面的代码导入到数…...

b2b电子商务网站的主要类型有哪些/自助建站的优势

二分 比较好的二分题目&#xff0c;需要花点脑筋想到&#xff0c;另外写的细节也多 题意&#xff1a;比较好懂&#xff0c;a数组有n个元素&#xff0c;b数组有m个元素&#xff0c;a数组的元素分别和b数组的元素相乘得到新的元素&#xff0c;那么一共会得到n*m个元素&#xff0c…...

网站 内容建设存在的问题/链接推广

usingSystem; usingSystem.IO; usingSystem.Web; namespaceSEC { /**//**//**//// /// 对文件和文件夹的操作类 /// public class FileControl { public FileControl() { } /**//**//**//// /// 在根目录下创建文件夹 /// /// 要创建的文件路径 public void CreateFolder(strin…...

怎样优化网站 优帮云/链接下载

页面布局分为两种方式&#xff0c;一种是主站&#xff0c;另外一种是后台管理的页面布局&#xff0c;如下&#xff1a; 1、网页主站&#xff1a; 主站页面的布局格式&#xff1a;<div class"pg_header"><div style"width: 980px;margin: 0 auto"&…...

销售推广案例网站/现在做推广的新渠道有哪些

在关系型数据库中,如果要设计成表机制来存储数据,必须满足基本的范式,至少满足前三个范式。第一范式(1NF)&#xff1a;是指在关系模型中&#xff0c;对域(域代表字段)添加的一个规范要求&#xff0c;所有的域都应该是原子性的(不可分拆)&#xff0c;即数据库表的每一列都是不可…...

南宁网络推广培训机构/seo内容优化是什么

综合性实验报告课程名称&#xff1a; 《C语言程序设计》实验题目&#xff1a; 学生成绩管理系统的设计与实现 姓 名&#xff1a; 学 号&#xff1a; 系 别&#xff1a; 专业班级&#xff1a; 指导教师&#xff1a;实验日期&#xff1a; 2012年6月1日—6月20日一、实验目的和要求…...