QT Designer'ı kullanarak PyQT'de birçok GUI arabirimi oluşturdum, ancak şimdi bir arabirimi başka bir pencereden açmaya çalışıyorum ve nasıl yapılacağını bilmiyorum .. Start.py GUI arabirimi çalıştırmak dosyasıdır Authentification_1 ve Acceuil_start.py, şimdi Start.pyöğle Acceuil_start istediğiniz GUI arayüzüne Acceuil_2.py çalıştırmak dosyasıdır .py. Bunun hakkında bir fikrin var mı? Teşekkür ederim. İşte benim kod:Başka bir dosyadan bir GUI dosyası açın PyQT
Start.py :
import sys
from PyQt4 import QtCore, QtGui
from Authentification_1 import Ui_Fenetre_auth
from Acceuil_2 import Ui_MainWindow #??? Acceuil_2.py is the file which I want to open
class StartQT4(QtGui.QMainWindow):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.ui = Ui_Fenetre_auth()
self.ui.setupUi(self)
def authentifier(val): #Slot method
self.Acceuil = Acceuil() #???
self.Acceuil.show() #???
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
myapp = StartQT4()
myapp.show()
sys.exit(app.exec_())
, onlar farklı bir ad değil, genel birine sahip böylece GUI sınıfları adlandırmak için gereken
Acceuil_start.py
import sys
from PyQt4 import QtCore, QtGui
from Authentification_1 import Ui_Fenetre_auth
from Acceuil_2 import Ui_MainWindow
class StartQT4(QtGui.QMainWindow):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
myapp = StartQT4()
myapp.show()
sys.exit(app.exec_())
Teşekkür ederiz. Ebeveyn sınıfı, diğerini açması gereken sınıf mı? ve neden _Acceuil_start.py_? içindeki sınıfın adını değiştirmeliyim? – Copernic
@Mehdi Cevabımı güncelleyeceğim! Bu şimdiye kadar çalışıyor mu? –
Hayır, bana bu hatayı veriyor: _NameError: global adı 'Acceuil' bunun için tanımlı değil_: 'self.Acceuil = Acceuil (self)' – Copernic