首页 > 编程语言 >【Python开发技术之PyQt5精品教学】第32课--PyQt5 QDialog类

【Python开发技术之PyQt5精品教学】第32课--PyQt5 QDialog类

时间:2024-10-14 08:52:52浏览次数:3  
标签:__ dlg 对话框 Python QDialog PyQt5 开发技术 窗口

PyQt5 QDialog类

QDialog 是一个顶层窗口小部件,主要用于收集用户的响应。它可以配置为 模态 (它会阻塞其父窗口)或 非模态 (对话框窗口可以被绕过)。

PyQt API有许多预配置的对话框小部件,例如InputDialog,FileDialog,FontDialog等。

示例

在下面的示例中,对话框窗口的 WindowModality 属性决定它是模态还是非模态。对话框上的任意一个按钮可以设置为默认值。当用户按下Escape键时,对话框会通过 QDialog.reject() 方法关闭。

在顶层QWidget窗口上的PushButton被点击时,会弹出一个对话框窗口。对话框的标题栏上没有最小化和最大化控件。

由于 WindowModality 被设置为 ApplicationModal ,用户不能将此对话框窗口置于后台。

import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *

def window():
   app = QApplication(sys.argv)
   w = QWidget()
   btn = QPushButton(w)
   btn.setText("Hello World!")
   btn.move(100,50)
   btn.clicked.connect(showdialog)
   w.setWindowTitle("PyQt Dialog demo")
   w.show()
   sys.exit(app.exec_())

def showdialog():
   dlg = QDialog()
   b1 = QPushButton("ok",dlg)
   b1.move(50,50)
   dlg.setWindowTitle("Dialog") 9. PyQt5 — QDialog Class
   dlg.setWindowModality(Qt.ApplicationModal)
   dlg.exec_()

if __name__ == '__main__':
   window()

以上代码产生以下输出。单击主窗口中的按钮,对话框弹出 –

PyQt5 QDialog类

标签:__,dlg,对话框,Python,QDialog,PyQt5,开发技术,窗口
From: https://blog.csdn.net/xzs51job/article/details/142908698

相关文章

  • 【Python开发技术之PyQt5精品教学】第24课--PyQt5 QTab小部件
    PyQt5QTab小部件如果一个表单具有太多字段无法同时显示,则可以将它们安排在选项卡窗口小部件的每个选项卡下的不同页面中。提供了一个选项卡栏和一个页面区域。第一个选项卡下的页面会显示,其他页面会隐藏。用户可以通过点击所需的选项卡来查看任何页面。以下是QTabWidget类的......
  • 【Python开发技术之PyQt5精品教学】第31课--PyQt5 QCalendar小工具
    PyQt5QCalendar小工具QCalendar小工具是一个有用的日期选择器控件。它提供了基于月份的视图。用户可以通过鼠标或键盘选择日期,默认为今天的日期。还可以指定日历的日期范围。以下是这个类的一些实用方法:序号方法和描述1setDateRange() :设置可选择的较低和较高日期。2setFi......
  • 烟尘监测识别系统 Python
    烟尘监测识别系统基于先进的AI机器视觉技术,烟尘监测识别系统通过现场已有的监控摄像头对可能发生露天焚烧的重点区域进行实时监测。一旦监测到烟尘,系统将立即触发告警,提醒相关人员及时处理。这一系统的应用,可以有效预防严重的火灾事件,降低火灾事故发生的概率,保护人民生命财产安......
  • Python知识点:基于Python工具,如何使用Web3.py进行以太坊智能合约开发
    开篇,先说一个好消息,截止到2025年1月1日前,翻到文末找到我,赠送定制版的开题报告和任务书,先到先得!过期不候!基于Python工具Web3.py进行以太坊智能合约开发简介智能合约是区块链技术的核心应用之一,它允许在没有中介的情况下,通过代码自动执行合同条款。以太坊是目前最流行的智......
  • Python知识点:基于Python工具,如何使用Brownie进行智能合约测试
    开篇,先说一个好消息,截止到2025年1月1日前,翻到文末找到我,赠送定制版的开题报告和任务书,先到先得!过期不候!如何使用Brownie进行智能合约测试在以太坊智能合约开发中,测试是至关重要的一环。Brownie是一个基于Python的智能合约开发和测试框架,它提供了一套完整的工具来帮助开发......
  • 基于Python的自然语言处理系列(26):Get to the Point Summarization
            在本篇文章中,我们将实现经典的"GettothePoint"模型,该模型最初发表于GettothePoint:SummarizationwithPointer-GeneratorNetworks。这是当时最著名的摘要生成模型之一,至今仍有很多人使用其Pointer-Generator架构作为他们模型的一部分。1.模型简介......
  • python基础知识(十一)面向过程,面向对象,对象属性,魔法方法,继承,私有权限
    目录面向过程是什么什么是面向对象?面向对象的三大特性:继承多态类对象self关键字对象属性类外面访问属性类内部获取属性魔法方法无参init()方法有参init()方法str()方法del()方法继承基础什么是继承单继承多继承继承进阶方法重写调用父类方法多层继承......
  • Python 禅道测试用例助手
    程序及源码下载地址:https://gitee.com/ishouke/zen-tao-testcase-helper实现功能禅道测试用例助手。实现xmind用例导入禅道,支持自动创建产品,模块,删除用例,此外,支持禅道导出的excel用例转xmind用例之后,再导入禅道,实现禅道用例管理闭环使用要求适配xmind版本:xmind8update9(XM......
  • 猫头虎分享:Python库 Selenium 的简介、安装、用法详解入门教程
    ......
  • Python包导入报错:ValueError: attempted relative import beyond top-level package
    Python包导入报错:ValueError:attemptedrelativeimportbeyondtop-levelpackage前置知识:python-m命令python-m命令用于以模块的方式运行Python代码,而不是直接执行脚本文件。它为执行Python代码提供了一种更加灵活和标准化的方式,特别适用于包和模块。python-m的工作原......