0
class Ui_MainWindow(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
app.atexit.connect(self.exitApp)
def exitApp(self):
atexit.register(self.exitApp(app))
ret = QtGui.QMessageBox.question(None, 'Close request', 'Are you sure you want to quit?',
QtGui.QMessageBox.Yes | QtGui.QMessageBox.No,
QtGui.QMessageBox.Yes)
if ret == QtGui.QMessageBox.Yes:
sys.exit(app.exec())
elif ret == QtGui.QMessageBox.No:
pass
def setupUi(self, MainWindow):
MainWindow.setObjectName(_fromUtf8("MainWindow"))
MainWindow.resize(1280, 760)
MainWindow.setMaximumSize(QtCore.QSize(16777215, 16777215))
def main():
MainWindow = QtGui.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.showMaximized()
Ui_MainWindow.loadData(ui)
sys.exit(app.exec_())
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
main()
"あなたは終了してもよろしいですか?"というメッセージボックスを表示します。ユーザーがWindowsの閉じるボタン(上のXボタン)をクリックしたとき。Windows X閉じるボタンが押されたときにメッセージボックスを表示する(PyQt4 Python)
ユーザーがボタンをクリックすると、どのように信号が得られますか?
解決策はおそらくDetect when the "x" or close button is pressedに似ていますが、私はPyQt4を使用しています。
私のためには機能しませんでした。私はPythonを閉じて、メッセージボックスは表示されません。私の質問に応答してくれてありがとう@eyllanesc私はあなたが以前私の質問のいくつかに答えていることに気づいた。 – lloydyu24
コードとUIがどのように構成されているかには多分問題があります。 ui.show()を追加すると、内容のない小さなウィンドウが表示されます。閉じようとすると、メッセージボックスは表示されますが、システムを含むメインウィンドウでは表示されません。 – lloydyu24
閉じるボタンを押したときに出力される信号はありませんが、ウィンドウは閉じます。完全なコードを表示してそれに適応させることができます。また、github、ドライブ、ドロップボックスなどで共有することもできます。 – eyllanesc