PyQt5:关闭窗口(4)

原创 2016年06月01日 00:02:47

学习《PyQt4入门指南 PDF中文版.pdf 》笔记

          一个显而易见的关闭窗口的方式是单击标题栏右上角的X标记。在接下来的示例中,我们将展示如何用代码来关闭程序,并简要介绍Qt的信号和槽机制。

         下面是QPushButton的构造函数,我们将会在下面的示例中使用它。

         QPushButton(constQString text, QWidget parent = None)

         text表示将显示在按钮上的文本。parent是其对象,用于指定按钮显示在哪个部件中。在我们的示例中,parent是一个QWidget对象。

#!/usr/bin/python
# quitbutton.py

from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QPushButton

class QuitButton(QtWidgets.QWidget):
    def __init__(self,  parent = None):
        QtWidgets.QWidget.__init__(self,  parent)
        
        self.setGeometry(300,  300,  250,  150)
        self.setWindowTitle('quitButton')
        quit = QPushButton('Close',  self)
        quit.setGeometry(10,  10,  60,  35)
        
        quit.clicked.connect(self.close)
        
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv) 
    quitButton = QuitButton()
    quitButton.show()
    sys.exit(app.exec_())

	quit = QPushButton('Close',  self)
    quit.setGeometry(10,  10,  60,  35)

以上两句用来创建一个按钮并将其放在QWidget部件上,就像我们将QWidget部件放到屏幕上一样。

         quit.clicked.connect(self.close)

         PyQt5的事件处理系统建立在信号-槽机制之上。如果我们点击quit按钮,那么信号clicked()就会被触发,槽函数可以是PyQt自带的槽函数,也可以是任何Python可以调用的函数等。connect()方法可以将信号和槽函数连接起来。在我们的示例中槽函数是PyQt中已定义的close()函数(注意:上面写法没有括号)。通过connect方法就可以建立发送者(quit按钮)和接受者(应用程序对象)之间的通信。




版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

PyQt5教程-04-关闭窗口

最简单的关闭一个窗口的方法是点击标题栏上的 x 标志。但是,在下面的例子中,我们将展示如何通过编程来控制关闭窗口。我们将使用PyQt5的信号/槽。以下是我们在例子中使用到的 QPushButton 控...

PyQt5(4)——控件事件响应与信号槽

事件(Events)是 GUI 程序中很重要的一部分,它由用户操作或系统产生。当我们调用程序的 exec_()方法时,程序就会进入主循环中。主循环捕获事件并将它们发送给相应的对象进行处理。 为此,Qt...

pyqt弹出新对话框,以及关闭对话框获取数据

from PyQt4 import QtGui,QtCore import sys class Web_Browser(QtGui.QDialog): def __init__(self,pa...

pyQt不同窗体间的值传递(一)——对话框关闭时返回值给主窗口

在写pyQt时,经常会遇到输入或选择多个参数的问题,把它写到一个窗体中,会显得主窗体很臃肿。所以一般是添加一个按钮,调用对话框,将这些参数选择放入弹出的对话框中,关闭对话框时将参数值返回给主窗体。 ...
  • shawpan
  • shawpan
  • 2015年07月15日 20:36
  • 4132

PyQt5退出按钮

import sys from PyQt5.QtWidgets import QApplication, QWidget, QPushButton from PyQt5.QtCore import Q...

PyQt4 - 关闭最小化问题

在这个部分,我们开始学习一些PyQt4的基本功能,解释会比较详细,就像教孩子说话一样。 最简单的example     下面的示例会非常的简单,仅仅显示一个小窗口,但是将来我们可以通过这个...

PyQt笔记005——pyqt5去掉标题栏

做窗口需要去掉标题栏,然而查资料好多事都是pyqt4的方法,实际上pyqt5和pyqt4有很多相似的地方,很容易就琢磨出来了方法: 添加引入from PyQt5 import Qt ...

关于pyqt4关闭窗口报错的解决方法

最近在用pyQt4开发应用界面,开发完毕后每次点窗体左上角的X关闭窗体都会显示烦人的如下报错信息,解决方法如下: 重写窗体关闭事件,即可解决。 def closeEvent(s...

PyQt之按钮传递鼠标按下事件点击失效

引子:每一个桌面应用程序或多或少的使用了按钮,而使用Qt自定义按钮几乎随处可见。 问题:当在父窗口中创建按钮后,经常需要点击按钮同时响应父窗口与按钮绑定的两个操作(甚至更多)。而自定义按钮类将鼠...

IPython交互模式下的退出

如果进入了shell交互窗口,python的退出方式只能够用函数不能够用命令,这有时候让人感觉到很不习惯。因为函数会比命令多一个括号的输入,这让人有点反感。而Linux的终端、DOS CMD窗口、MA...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PyQt5:关闭窗口(4)
举报原因:
原因补充:

(最多只允许输入30个字)