最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PyQt5 closeEvent關(guān)閉事件退出提示框原理解析

 更新時(shí)間:2020年01月08日 11:07:29   作者:MilesMa  
這篇文章主要介紹了PyQt5 closeEvent關(guān)閉事件退出提示框原理解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

這篇文章主要介紹了PyQt5 closeEvent關(guān)閉事件退出提示框原理解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

如果關(guān)閉QWidget,就會(huì)產(chǎn)生一個(gè)QCloseEvent,并且把它傳入到closeEvent函數(shù)的event參數(shù)中。改變控件的默認(rèn)行為,就是替換掉默認(rèn)的事件處理。

原生的英文提示框:

  # 添加一個(gè)退出的提示事件
  def closeEvent(self, event):
    """我們創(chuàng)建了一個(gè)消息框,上面有倆按鈕:Yes和No.第一個(gè)字符串顯示在消息框的標(biāo)題欄,第二個(gè)字符串顯示在對(duì)話框,
          第三個(gè)參數(shù)是消息框的倆按鈕,最后一個(gè)參數(shù)是默認(rèn)按鈕,這個(gè)按鈕是默認(rèn)選中的。返回值在變量reply里。"""
    
    reply = QMessageBox.question(self, 'Message',"Are you sure to quit?",
                   QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
    # 判斷返回值,如果點(diǎn)擊的是Yes按鈕,我們就關(guān)閉組件和應(yīng)用,否則就忽略關(guān)閉事件
    if reply == QMessageBox.Yes:
      event.accept()
    else:
      event.ignore()

修改成中文樣式:

  # 添加中文的確認(rèn)退出提示框1
  def closeEvent(self, event):
    # 創(chuàng)建一個(gè)消息盒子(提示框)
    quitMsgBox = QMessageBox()
    # 設(shè)置提示框的標(biāo)題
    quitMsgBox.setWindowTitle('確認(rèn)提示')
    # 設(shè)置提示框的內(nèi)容
    quitMsgBox.setText('你確認(rèn)退出嗎?')
    # 設(shè)置按鈕標(biāo)準(zhǔn),一個(gè)yes一個(gè)no
    quitMsgBox.setStandardButtons(QMessageBox.Yes | QMessageBox.No)
    # 獲取兩個(gè)按鈕并且修改顯示文本
    buttonY = quitMsgBox.button(QMessageBox.Yes)
    buttonY.setText('確定')
    buttonN = quitMsgBox.button(QMessageBox.No)
    buttonN.setText('取消')
    quitMsgBox.exec_()
    # 判斷返回值,如果點(diǎn)擊的是Yes按鈕,我們就關(guān)閉組件和應(yīng)用,否則就忽略關(guān)閉事件
    if quitMsgBox.clickedButton() == buttonY:
      event.accept()
    else:
      event.ignore()
  # 添加中文的退出提示框2
  def closeEvent(self, event):
    # 創(chuàng)建一個(gè)消息盒子(提示框)
    quitMsgBox = QMessageBox()
    # 設(shè)置提示框的標(biāo)題
    quitMsgBox.setWindowTitle('確認(rèn)窗口')
    # 設(shè)置提示框的內(nèi)容
    quitMsgBox.setText('你確定退出嗎?')
    # 創(chuàng)建兩個(gè)點(diǎn)擊的按鈕,修改文本顯示內(nèi)容
    buttonY = QPushButton('確定')
    buttonN = QPushButton('取消')
    # 將兩個(gè)按鈕加到這個(gè)消息盒子中去,并指定yes和no的功能
    quitMsgBox.addButton(buttonY, QMessageBox.YesRole)
    quitMsgBox.addButton(buttonN, QMessageBox.NoRole)
    quitMsgBox.exec_()
    # 判斷返回值,如果點(diǎn)擊的是Yes按鈕,我們就關(guān)閉組件和應(yīng)用,否則就忽略關(guān)閉事件
    if quitMsgBox.clickedButton() == buttonY:
      event.accept()
    else:
      event.ignore()

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

相關(guān)文章

最新評(píng)論

平邑县| 黔西县| 芦溪县| 南召县| 始兴县| 泰州市| 科技| 郴州市| 东乌珠穆沁旗| 高唐县| 多伦县| 鹤壁市| 阿图什市| 盐源县| 宜川县| 梁山县| 达日县| 临朐县| 茂名市| 海南省| 阳谷县| 德清县| 鹤岗市| 汽车| 南通市| 新化县| 九台市| 探索| 秀山| 荥经县| 肇东市| 崇信县| 峨山| 长汀县| 扎兰屯市| 曲水县| 崇义县| 峨边| 吉安县| 伊宁市| 平定县|