91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PyQt5 closeEvent關閉事件退出提示框原理解析

發布時間:2020-10-01 02:01:17 來源:腳本之家 閱讀:552 作者:MilesMa 欄目:開發技術

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

如果關閉QWidget,就會產生一個QCloseEvent,并且把它傳入到closeEvent函數的event參數中。改變控件的默認行為,就是替換掉默認的事件處理。

原生的英文提示框:

PyQt5 closeEvent關閉事件退出提示框原理解析

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

修改成中文樣式:

PyQt5 closeEvent關閉事件退出提示框原理解析

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

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

台中县| 福海县| 大冶市| 衡水市| 穆棱市| 南宫市| 澄迈县| 都江堰市| 黑河市| 太康县| 榆社县| 鱼台县| 东至县| 攀枝花市| 恭城| 深州市| 磴口县| 永安市| 东安县| 锦屏县| 凯里市| 铜梁县| 营山县| 湘潭市| 安阳县| 遂昌县| 天气| 盐山县| 阜新| 蒲江县| 大田县| 家居| 广汉市| 平舆县| SHOW| 庄浪县| 鸡西市| 石林| 绥宁县| 青龙| 南通市|