上QQ阅读APP看书,第一时间看更新
1.3.3 水平布局管理器QHBoxLayout
水平布局(Horizontal Layout)就是指将控件从左到右依次摆放,控件都是水平对齐的,我们可以用QHBoxLayout这个布局管理器来实现,如图1-15所示。
图1-15 水平布局
现在我们在程序中水平布局一个QLabel控件和一个QLineEdit控件,详见示例代码1-8。
示例代码1-8
import sys
from PyQt5.QtWidgets import *
class Window(QWidget):
def __init__(self):
super(Window, self).__init__()
username_label = QLabel('Username:') #注释1开始
username_line = QLineEdit() #注释1结束
h_layout = QHBoxLayout() #注释2开始
h_layout.addWidget(username_label)
h_layout.addWidget(username_line)
self.setLayout(h_layout) #注释2结束
if __name__ == '__main__':
app = QApplication([])
window = Window()
window.show()
sys.exit(app.exec())
运行结果如图1-16所示。
图1-16 控件水平布局
代码解释:
#1 除了Qlabel控件,我们还添加了QLineEdit控件,它是一个单行文本输入框,在这里用于输入账号。
#2 实例化一个水平布局管理器并调用addWidget()方法将QLabel控件和QLineEdit控件添加到布局中。接着通过窗口的setLayout()方法将水平布局方式设置为窗口的整体布局。
在水平布局中,先添加的控件位于后添加的控件左侧。