PyQt5-如何创建弹窗 (QDialog)

 时间:2026-02-15 13:06:24

1、①弹窗是个独立的顶层窗口,可以创建 QDialog 对象来创建一个窗口。

②QDialog继承自QWidget类,也是个可视化控件,QDialog是对话窗口的基类。

③弹窗有多种展示形式: 

阻塞展示, 弹窗若不关闭,无法操作主窗口;有两种展示:

----第一,应用程序级别的展示;使用exec()方法;包函了展示窗口。

----此种展示,必须先与对话框进行交互(例如取消,确定等交互),。

如图例中,创建一个弹窗。

PyQt5-如何创建弹窗 (QDialog)

2、阻塞展示对话框的第二种:

----窗口级别的展示;使用open()方法;包函了展示窗口。

----此种展示,阻塞与对话框关联的窗口,直到对话框交互动作完成并关闭。

PyQt5-如何创建弹窗 (QDialog)

3、非阻塞式:弹窗不阻塞与之关联窗口。仅使用show()方法即可。

PyQt5-如何创建弹窗 (QDialog)

1、show()方法结合showModel(bool) 方法;也能实现弹窗的阻塞。

PyQt5-如何创建弹窗 (QDialog)

2、show()方法结合setWindowModality(self, Qt.WindowModality) 

参数 Qt.WindowModality有3种形态:

非模态模式:

---- Qt.NonModal 或 0 ;不会阻止其他窗口的输入。

PyQt5-如何创建弹窗 (QDialog)

3、窗口模式;

setWindowModality(Qt. WindowModal) 

参数 Qt. WindowModal 或 1 ;

----该窗口是单一窗口层次结构的模式,并阻止对其父窗口、所有祖父母窗口以及其父窗口和祖父母窗口的所有同级窗口的输入。

PyQt5-如何创建弹窗 (QDialog)

4、应用程序模式:

setWindowModality(Qt.  ApplicationModal) 

参数:Qt.  ApplicationModal 或 2,

----该窗口是应用程序的模式,并阻止所有窗口的输入。

PyQt5-如何创建弹窗 (QDialog)

  • Visual Studio纯文本滚动条如何显示错误
  • UltraEdit怎么设置另存对话框设置编码为默认
  • 学习R语言的过程中如何获取帮助?
  • ArcGIS for Server 10.1找回用户名和密码
  • NI MAX连接工业相机帧率无法设置
  • 热门搜索
    汽车雨刮器怎么换 新生儿黄疸高怎么办 右下眼皮跳是怎么回事 qq机器人怎么弄 林肯汽车怎么样 日立电梯怎么样 肚子胀痛是怎么回事 淘宝怎么退保证金 怎么捐精 摩擦力怎么算