سؤال

هل هناك أي وسيلة للمطالبة المستخدم للخروج من البرنامج واجهة المستخدم الرسومية مكتوبة في بيثون؟

وشيء من هذا القبيل "هل أنت متأكد أنك تريد الخروج من البرنامج؟"

وأنا استخدام PyQt.

هل كانت مفيدة؟

المحلول

نعم. تحتاج إلى تجاوز السلوك وثيق الافتراضي لQWidget تمثل التطبيق الخاص بك بحيث أنها لا تقبل على الفور الحدث. البنية الأساسية تريده هو شيء من هذا القبيل:

def closeEvent(self, event):

    quit_msg = "Are you sure you want to exit the program?"
    reply = QtGui.QMessageBox.question(self, 'Message', 
                     quit_msg, QtGui.QMessageBox.Yes, QtGui.QMessageBox.No)

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

تعليمي التي كتبها <وأ href = "https://stackoverflow.com/questions المذكورة / 1414781 / موجه على اساس خروج في باي كيوت التطبيق / 1414828 # 1414828 "> las3rjock لديه مناقشة لطيفة من هذا. كما تحقق من وصلات من باي كيوت الصفحة في Python.org، ولا سيما في مسؤول إشارة و لمعرفة المزيد عن الأحداث وكيفية التعامل معها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top