第4课:构建左侧菜单,使用 QPushButton
在第三课的基础上,继续在ui_main_window.py文件中,为 左侧菜单
self.left_menu
画面增加UI控件。
思路总结如下,在左侧菜单frame
画面中,增加垂直布局
,然后在布局中依次增加顶部画面frame
、底部画面frame
、最底部标签label
。
然后,在顶部/底部frame画面
中,增加垂直布局
,在布局中依次增加pushButton
按钮。顶部
与底部
之间,增加spacer间隔
项分割。
总结手动创建控件的思路就是:先创建
frame画布
;然后规定画布中的布局方式为水平/垂直...布局
;在布局中,添加需要增加的控件,如pushButton
、label
等,
画面/子控件之间可以使用spacer间隔
隔开。
-
1、增加最底层的4个大控件
- 规定
left_menu
的布局方式是垂直布局,注意将布局与左菜单画面绑定起来的语句是self.left_menu_layout = QVBoxLayout(self.left_menu)
。 - 依次新建顶部画面菜单
self.left_menu_top_frame
、中间分隔项self.left_menu_spacer
、底部画面菜单self.left_menu_bottom_frame
以及 版本标签self.left_menu_label_version
。 - 效果:
- 规定
-
2、在顶部/底部画面中增加按钮
- 依然先规定/创建 布局方式为垂直布局,
- 在创建 几个按钮,
- 然后将按钮对象依次添加到垂直布局中。
- 最后,限定只有画布的背景色是红色,其他子部件的背景色默认,前提是限定前指定对象名称;Qt-CSS样式表含义参考
self.left_menu_top_frame.setObjectName("left_menu_top_frame")
self.left_menu_top_frame.setStyleSheet("#left_menu_top_frame { background-color: red; }")
- 效果: