pyqt5-如何设置控件的垂直和水平布局的嵌套

2025-10-23 10:25:17

1、①创建文件-test1.py;

②导入模块,PyQt5.Qt, sys;

③定义控件类,设置初始值。

④实例应用程序对象,窗口类对象,并展示窗口;

pyqt5-如何设置控件的垂直和水平布局的嵌套

2、定义方法,添加按钮控件(但不指定父控件):

①定义setup_ui()方法,在构造函数中调用;

②定义一个test()方法,添加若干按钮语句。并在setup_ui()中调用;

pyqt5-如何设置控件的垂直和水平布局的嵌套

3、设置垂直布局,仍然不指定父控件;

①实例一个垂直布局对象,layout_v = QVBoxLayout();

②用垂直布局的 addWidget ()方法,将按钮控件添加到垂直布局;

pyqt5-如何设置控件的垂直和水平布局的嵌套

4、文本控件:

创建纯文本显示控件,pt = QPlainTextEdit(),不绑定父控件。

此时,将layout_v,及pt 两个控件看作在同一层级上。

pyqt5-如何设置控件的垂直和水平布局的嵌套

5、将垂直布局嵌套进水平布局:

①实例一个水平布局对象 layout_h = QHBoxLayout();

②将layout_v,及pt 两个控件 添加进水平布局;

这时的垂直布局 layout_v, 就被嵌套进了水平布局layout_h 中。

pyqt5-如何设置控件的垂直和水平布局的嵌套

6、设置父窗口布局:

①设置父窗口布局为水平布局,self.setLayout(layout_h);展示如图。

②但有一个问题,就是父窗口拉伸时,按钮的间距也被拉伸。

pyqt5-如何设置控件的垂直和水平布局的嵌套

7、给垂直布局添加拉伸因子:layout_v.addStretch(stretch=0)

①addStretch() 方法的作用是两个控件的间距拉伸,(或说将两个控件向两端排挤)。

②在垂直布局中,当然是上下排挤。注意添加的位置。

例如:将addStretch()方法放在最后一个按钮后,如图。

pyqt5-如何设置控件的垂直和水平布局的嵌套

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢