self.setWindowFlags(Qt.WindowCloseButtonHint)
self.setWindowTitle('子窗口')
self.resize(280, 230)
class FatherWindow(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 设置窗口标题和大小
self.setWindowTitle('TestWindow')
self.resize(400, 300)
self.btn = QPushButton('打开新窗口', self)
self.btn.clicked.connect(self.btnClicked)
layout = QVBoxLayout()
layout.addWidget(self.btn)
self.setLayout(layout)
self.show()
def btnClicked(self):
self.chile_Win = ChildWindow()
self.chile_Win.show()
self.chile_Win.exec_()
if __name__ == '__main__':
app = QApplication(sys.argv)
# 创建主窗口
window = FatherWindow()
# 显示窗口
window.show()
# 运行应用,并监听事件
sys.exit(app.exec_())
在使用
PyQt
编写 GUI 程序时,弹出
新
窗口
是常见的需求。本文将介绍如何通过在一个
窗口
中
点击
按钮弹出另一个
窗口
,并提供相应的代码实现。通过运行上述代码,我们就可以在主
窗口
中
点击
按钮弹出一个
新
窗口
,并在
新
窗口
中显示 “Hello, world!否则,
新
窗口
关闭后仍有可能占用一定的内存资源。
PyQt
学习笔记:如何通过
点击
按钮弹出另一个
窗口
。来弹出
新
窗口
,则在关闭
新
窗口
时,需要手动调用。最后,在主
窗口
类中定义一个
打开
新
窗口
的
方法
。
#
PyQt
5
点击
按钮弹出自定义
窗口
创建
新
窗口
1.
创建
QPushButton 按钮并绑定
点击
事件函数;
2.
点击
按钮时
创建
自己定义的
窗口
类对象并显示;
3. 包含两个例程,分别为只能弹出一个
窗口
和可以反复
点击
按钮
创建
无限个
窗口
的代码。
一个
PyQt
窗口
简单例
子
import sys
from
PyQt
5.QtWidgets import QApplication, QWidget #1if __name__ == '__main__':
app = QApplication(sys.argv) #2
w = QWidget() #3
w.resize(250, 150)
研究了很久,将show()改成exec_()后运行,报错如下,原因是不存在exec_()原因是只有一个类,只有一个主
窗口
,所以修改内容都是在同一个
窗口
内修改的。解决办法:将class的QMainWindow改成QDialog。看到是可以打印
子
窗口
,说明是已经进入
子
窗口
,但是就是一直闪退。结果是之间取代了原来的主
窗口
而且
按键
没有消失。目标:主
窗口
保持,通过
按键
弹出
子
窗口
。但是,这里遇到个问题,
子
窗口
闪退。
QInputDialog--弹出输入对话框1. 输入整数2. 输入小数3. 输入文本4. 输入多行文本5. 输入选项 QMessageBox--弹出消息提示框1. 信息2. 问答3. 警告4. 危险5. 关于6.三、QFileDialog--弹出文件对话框
PyQt
5中弹出
窗口
最常用的三种:输入框、消息提示、文件夹对话框,下面详细介绍这三大类。
一、QInputDialog–弹出输入对话框
1. 输入整数
# 后面四个数字的作用依次是 初始值 最小值 最大值 步幅
value
使用
pyqt
弹出消息提示框安装
pyqt
安装遇到问题 `No matching distribution found for
PyQt
5-Qt5>=5.15.2 (from
pyqt
5)`还有 `To avoid this problem you can invoke
Python
with '-m pip' instead of running pip directly.` 问题`Ubuntu` 默认使用 `
Python
2` 更换默认配置为 `
Python
3`测试验证
创建
一个基本的GUI应用各种样式
并保存为EyeTracking_main.ui和EyeTracking_process.ui(因为我在做眼动追踪,因此窗体命名与此相关,后同),使用UIC工具转成.py文件。
2.写一个驱动函数调用...
最近在自学习,第一次写博客,有需要改正的还请留言讨论。
先说一下这个练习的需求:在主界面有一个按钮,
点击
按钮弹出一个
新
的界面。
新
界面上也有一个按钮,
点击
可以返回主界面。(使用的是Qt 5.9.4版本的Qt Creator)
(
新
建项目细节没问题的直接看文章末尾的截图吧~)
新
建项目 -- >弹窗中选择Application的Qt Widgets Application(默认的),
点击
“choose” -- > 更...
在前面的文章中,我们已经介绍了如何
打开
对话框
窗口
。 这些是特殊的
窗口
(默认情况下)抓住用户的焦点,并运行自己的事件循环,有效地阻止应用程序其余部分的执行。
但是,在实际应用中常常会希望在不中断主
窗口
的情况下在应用程序中
打开
第二个
窗口
——例如,显示一些长时间运行的进程的输出,或者显示图形或其他可视化效果。 或者,可能想要
创建
一个应用程序,允许您在多个文档各自的
窗口
中同时处理多个文档。