这篇文章主要讲解了“pyqt5中窗体的绝对布局和相对布局以及所需要的组件或控件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“pyqt5中窗体的绝对布局和相对布局以及所需要的组件或控件”吧!
一、相对布局与绝对布局
相对布局
布局中的控件可以随着窗体的变化而变化。
布局中的控件之间的距离可以按照比例来调节。
绝对布局与相对布局的不同
1.绝对布局是直接将控件载入到窗体的位置就可以了。一般直接采用move函数移动到指定的位置后不变。
2.相对布局是要将控件放到盒布局中。一般是还要加入一个盒布局QHboxlayout(水平方向)Qvboxlayout (垂直方向),网格布局(Qgridboxlayout)
二、需要使用的组件或控件
QLineEdit控件
单行输入框:只能输入一行的文本编辑框。
QHBoxlayout水平盒布局
记忆方式:看H中的横线,就认为是水平布局。
三、布局排布
利用类似弹簧功能:就是直接使用盒布局的addstretch方法就可以了。
addstretch函数还可以对空白部分进行比例分割。
使用格式:
布局盒子.addstretch(弹簧比例)
弹簧比例:是指在窗体中空白布局进行指定的比例分割。
四、总结强调
1.掌握相对布局与绝对布局的区别。
2.掌握相对布局中的水平盒布局与垂直盒布局。
3.掌握盒布局中的控件比例排布的关系。
本节知识源代码:
import sys
from PyQt5.QtWidgets import QApplication,QWidget,QVBoxLayout,QHBoxLayout,QGridLayout,QLineEdit,QLabel,QPushButton
class MyljyClass(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setWindowTitle("刘金玉编程")
self.setGeometry(app.desktop().width()/2-self.width()/2,50,400,300)
lblCode=QLabel("验证码",self)
leCode=QLineEdit(self)
btnCode=QPushButton("验证",self)
# leCode.move(40,0)
# btnCode.move(190,0)
# hlayout=QHBoxLayout(self)
# hlayout.addWidget(lblCode)
# hlayout.addWidget(leCode)
# hlayout.addWidget(btnCode)
vlayout=QVBoxLayout(self)
# vlayout.addLayout(hlayout)
vlayout.addWidget(lblCode)
vlayout.addStretch(1)
vlayout.addWidget(leCode)
vlayout.addStretch(1)
vlayout.addWidget(btnCode)
vlayout.addStretch(2)
self.show()
if __name__=="__main__":
app=QApplication(sys.argv)
mljy=MyljyClass()
app.exec_()
感谢各位的阅读,以上就是“pyqt5中窗体的绝对布局和相对布局以及所需要的组件或控件”的内容了,经过本文的学习后,相信大家对pyqt5中窗体的绝对布局和相对布局以及所需要的组件或控件这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。