学习记录Day6-PyQt5设置窗口样式

学习资源:《Python GUI设计PyQt5从入门到实践》

(16条消息) 学习记录Day4-Python GUI设计PyQt5从入门到实践_li_s_t的博客-CSDN博客

接上回成功运行第一个PyQt5窗口程序,其中添加的主程序如下:

import sys
#程序入口,程序从此处启动PyQt设计的窗口
from PyQt5.QtWidgets import QApplication, QMainWindow
if __name__ == '__main__':
    app = QApplication(sys.argv)
    MainWindow = QMainWindow()      #创建窗口对象
    ui = Ui_MainWindow()            #创建PyQt设计的窗口对象
    ui.setupUi(MainWindow)          #调用PyQt窗体的方法对窗体对象进行初始化设置
    MainWindow.show()               #显示窗体
sys.exit(app.exec_())               #程序关闭时退出进程

一、使用setWindowsFlags()函数设置窗口样式

Qt.WindowsFlags参数表示要设置的窗口样式,其取值分为两种类型。

下面两个表格是自己手打的,如有误欢迎评论区留言,非常感谢!!


二、表1-PyQt5的基本窗口类型及说明

参数值

说明

Qt.Widget

默认窗口,有最大化、最小化和关闭按钮

Qt.Window

普通窗口,有最大化、最小化和关闭按钮

Qt.Dialog

对话框窗口,有问号(?)和关闭按钮

Qt.Popup

无边框的弹出窗口

Qt.ToolTip

无边框的弹出窗口,没有任务栏

Qt.SplashScreen

无边框的闪屏窗口,没有任务栏

Qt.SubWindow

子窗口,窗口没有按钮,但有标题

例如,下面代码用来将名称为MainWindow的窗口设置为一个对话框窗口

MainWindow.setWindowFlags(QtCore.Qt.Dialog)    #显示一个有问号(?)和关闭按钮的对话框

三、表2-自定义顶层窗口外观及说明

参数值

说明

Qt.MSWindowsFixedSizeDialogHint

无法调整大小的窗口

Qt.FramelessWindowHint

无边框窗口

Qt.CustomizeWindowHint

有边框但无标题和按钮,不能移动和拖动的窗口

Qt.WindowTitleHint

添加标题栏和一个关闭按钮的窗口

Qt.WindowSystemMenuHint

添加系统目录和一个关闭按钮的窗口

Qt.WindowMaximizeButtonHint

激活最大化按钮的窗口

Qt.WindowMinimizeButtonHint

激活最小化按钮的窗口

Qt.WindowMinMaxButtonsHint

激活最小化和最大化按钮的窗口

Qt.WindowCloseButtonHint

添加一个关闭按钮的窗口

Qt.WindowContextHelpButtonHint

添加像对话框一样的问号(?)和关闭按钮

Qt.WindowStaysOnTopHint

使窗口始终处于顶层位置

Qt.WindowStaysOnBottomHint

使窗口始终处于底层位置

例如,下面代码用来设置名称为MainWindow的窗口只有关闭按钮,而没有最大化、最小化按钮:

MainWindow.setWindowFlags(QtCore.Qt.WindowCloseButtonHint)    #只显示关闭按钮

四、具体应用

注意:需要将设置窗口样式的代码放在setupUi()函数之后执行。

import sys
#程序入口,程序从此处启动PyQt设计的窗口
from PyQt5.QtWidgets import QApplication, QMainWindow
if __name__ == '__main__':
    app = QApplication(sys.argv)
    MainWindow = QMainWindow()      #创建窗口对象
    ui = Ui_MainWindow()            #创建PyQt设计的窗口对象
    ui.setupUi(MainWindow)          #调用PyQt窗体的方法对窗体对象进行初始化设置
    MainWindow.setWindowFlags(QtCore.Qt.Window)
    MainWindow.show()               #显示窗体
sys.exit(app.exec_())               #程序关闭时退出进程
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值