欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PyQt5每天必學(xué)之關(guān)閉窗口

 更新時(shí)間:2018年04月19日 10:36:37   作者:我的世界你曾經(jīng)來(lái)過(guò)  
這篇文章主要為大家詳細(xì)介紹了PyQt5每天必學(xué)之關(guān)閉窗口,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

最簡(jiǎn)單的關(guān)閉一個(gè)窗口的方法是點(diǎn)擊標(biāo)題欄上的 x 標(biāo)志。但是,在下面的例子中,我們將展示如何通過(guò)編程來(lái)控制關(guān)閉窗口。我們將使用PyQt5的信號(hào)/槽。

以下是我們?cè)诶又惺褂玫降?QPushButton 控件的構(gòu)造方法。

QPushButton(string text, QWidget parent = None)

text 參數(shù)是在按鈕上顯示的文本。parent 要將按鈕控件放在哪里。在下面的例子中我們要將按鈕控件放到 QWidget里。一個(gè)應(yīng)用程序的窗口控件可以形成一個(gè)分層結(jié)構(gòu),在這個(gè)層次,大多數(shù)控件有他們的父控件,沒(méi)有父控件的控件即是頂層窗口。

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
PyQt5 教程

這個(gè)程序創(chuàng)建一個(gè)退出按鈕。當(dāng)我們按下按鈕,應(yīng)用程序?qū)⒔K止。

作者:我的世界你曾經(jīng)來(lái)過(guò)
博客:http://blog.csdn.net/weiaitaowang
最后編輯:2016年7月29日
"""

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

class Example(QWidget):

 def __init__(self):
  super().__init__()

  self.initUI()

 def initUI(self):

  btn = QPushButton('退出', self)
  btn.clicked.connect(QCoreApplication.instance().quit)
  btn.resize(btn.sizeHint())
  btn.move(50, 50)

  self.setGeometry(300, 300, 300, 220)
  self.setWindowTitle('退出按鈕')  
  self.show()

if __name__ == '__main__':

 app = QApplication(sys.argv)
 ex = Example()
 sys.exit(app.exec_())

在這個(gè)例子中,我們創(chuàng)建了一個(gè)退出按鈕。當(dāng)點(diǎn)擊按鈕,應(yīng)用程序終止。

from PyQt5.QtCore import QCoreApplication

我們需要使用 QtCore 模塊中的 QCoreApplication 對(duì)象

 btn = QPushButton('退出', self)

我們創(chuàng)建了一個(gè)按鈕,按鈕是 QPushButton 類的一個(gè)實(shí)例。構(gòu)造函數(shù)的第一個(gè)參數(shù)是按鈕的標(biāo)簽。第二個(gè)參數(shù)是父窗口控件。父窗口控件是Example 控件,這是一個(gè)繼承自 QWidget 的類。

btn.clicked.connect(QCoreApplication.instance().quit)

該事件處理系統(tǒng)建立在 PyQt5 的信號(hào)/槽的機(jī)制上。如果我們點(diǎn)擊該按鈕,按鈕將會(huì)發(fā)出信號(hào),單擊信號(hào)連接到 quit() 方法使應(yīng)用程序終止。

槽可以是 Qt 的槽也可以是 Python 的任何調(diào)用。 QCoreApplication 包含主事件循環(huán);它處理和調(diào)度所有事件。instance()方法為我們提供了其當(dāng)前實(shí)例。注意,區(qū)分 QCoreApplication 與 QApplication。

發(fā)送器和接收器:在通信的兩個(gè)對(duì)象之間進(jìn)行。發(fā)送器是按鈕,接收器是應(yīng)用對(duì)象。

概念有些混亂,這里整理一下:

按鈕(btn)是發(fā)送器。點(diǎn)擊(clicked)按鈕后,發(fā)出點(diǎn)擊信號(hào)。點(diǎn)擊信號(hào)連接(connect)到槽(可以是 Qt 的槽也可以是 Python 的任何調(diào)用)。
在我們的例子中是Qt的槽,QCoreApplication處理和調(diào)度所有Qt事件,調(diào)度出instance(這個(gè)實(shí)例(接收器))的 quit 事件。

大概就這個(gè)意思了,慢慢理解吧!

程序執(zhí)行后,點(diǎn)擊退出按鈕,將關(guān)閉程序。

這里寫(xiě)圖片描述

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論