亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

PyQt5每天必學(xué)之彈出消息框

 更新時間:2018年04月19日 10:57:29   作者:我的世界你曾經(jīng)來過  
這篇文章主要為大家詳細(xì)介紹了PyQt5每天必學(xué)之彈出消息框,具有一定的參考價值,感興趣的小伙伴們可以參考一下

默認(rèn)情況下,如果我們點(diǎn)擊標(biāo)題欄上的 X 按鈕,QWidget 關(guān)閉。有時候,我們需要改變這個默認(rèn)行為。例如,如果我們有一個文件,要在編輯器中打開,我們可以先顯示一個消息框,確認(rèn)打開與否的操作。

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

"""
PyQt5 教程

當(dāng)我們點(diǎn)擊應(yīng)用程序窗口的關(guān)閉按鈕,該程序顯示一個確認(rèn)信息框。

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

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QMessageBox

class Example(QWidget):

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

  self.initUI()

 def initUI(self):

  self.setGeometry(300, 300, 300, 220)
  self.setWindowTitle('消息盒子')  
  self.show()

 def closeEvent(self, event):

  reply = QMessageBox.question(self, '信息', '確認(rèn)退出嗎?', 
   QMessageBox.Yes | QMessageBox.No, QMessageBox.No)

  if reply == QMessageBox.Yes:
   event.accept()
  else:
   event.ignore()

if __name__ == '__main__':

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

如果我們關(guān)閉 QWidget控件,將產(chǎn)生 QCloseEvent 事件。修改控件特性我們需要重新實(shí)現(xiàn) closeEvent() 事件處理程序。

 reply = QMessageBox.question(self, '信息', '確認(rèn)退出嗎?', 
   QMessageBox.Yes | QMessageBox.No, QMessageBox.No)

我們顯示一個消息框,它有兩個按鈕:Yes和No。第一個字符串出現(xiàn)在標(biāo)題欄。第二個字符串是對話框中顯示的消息文本。第三個參數(shù)指定彈出的對話框中的按鈕組合。最后一個參數(shù)是默認(rèn)按鈕,它是具有初始鍵盤焦點(diǎn)的按鈕。返回值被存儲在reply 變量中。

 if reply == QMessageBox.Yes:
   event.accept()
  else:
   event.ignore()

在這里我們使用 if 測試返回值。如果我們點(diǎn)擊 Yes 按鈕,我們接受了按鈕控件的關(guān)閉并執(zhí)行應(yīng)用程序的終止事件。否則,我們忽略關(guān)閉事件。

程序執(zhí)行后點(diǎn)擊右上角的 x 彈出確認(rèn)退出消息盒子

這里寫圖片描述 這里寫圖片描述

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

相關(guān)文章

最新評論