سؤال

يوم جيد في الثيثونستاس وبقية حشد الترميز،

لدي اثنين من QMAINWindows مصممة ومفووف بشكل منفصل. أنا بحاجة ل:

  1. عرض أولا
  2. على زر اضغط إغلاق النافذة الأولى
  3. بناء وعرض النافذة الثانية باستخدام الحجج من الأول

لقد حاولت تصميم فئة ثالثة للسيطرة على التدفق لكنها لا تفهم محاولة الإشارة / الفتحة:

 QtCore.QObject.connect(self.firstWindow,QtCore.SIGNAL("destroyed()"),self.openSecondWindow)

يا مصمم، هل تنير لي بطريقة ذكية أو اختراق ذكي لحل المصاعب الخاصة بي.

هتافات.

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

المحلول 2

حسنا، لقد استسلمت على فئة التحكم (في المرة القادمة ستجعل السيطرة كأول شيء وفقط بعد ذلك جعل النوافذ)

بدلا من ذلك قام بتزوير النوافذ عن طريق حقن بذور منشئ الثواني في الجسم الأول ثم self.close() والدة الشابة. مأساوي جدا.

نصائح أخرى

إجابه:

كان لدي بعض المتاعب مع إشارات الاتصال مؤخرا. لقد وجدت أنه عملت عندما أزلت الأقواس من QtCore.SIGNAL.

حاول تغيير هذا:

QtCore.SIGNAL("destroyed()")

الى هذا:

QtCore.SIGNAL("destroyed")

مرجع:

هذا لأن لديك تستخدم إشارات / فتحات "النمط القديم" وفقا ل Riverbank. هنا إشارة إلى المستندات. وبعد على وجه التحديد، هذا هو الخط الذي تبحث عنه:

QtCore.QObject.connect(a, QtCore.SIGNAL("PySig"), pyFunction)

أيضا:

تأكد الخاص بك this.FirstWindow الطبقة لديها هذا الخط قبل الخاص بك __init__(self...):

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