ich habe folgendes Problem: in einem Fenster befinden sich zwei Frames mit jeweils einem Button. Nach Start der Anwendung sollen beide Frames nicht angezeigt werden. Erst durch Auswahl in der Menüleiste (Menüpunkt <Rezepte><Eingabe>) soll ein Frame angezeigt werden.
Nach Start der Anwendung wird auch ein leeres Fenster angezeigt. Wenn ich aber den besagten Menüpunkt auswähle erscheint die folgende Fehlermeldung:
Code: Alles auswählen
File "/home/guenter/Projekte/python/testframe/testframe/mainframe.py", line 53, in slotEingabe
self.dlg_testfr.frame1.show()
AttributeError: 'mainframe' object has no attribute 'dlg_testfr'
Code: Alles auswählen
# Imports
import sys
from PyQt4 import QtGui, uic, QtCore
# from myModules import dlg_center
class mainframe(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
dlg_testfr = uic.loadUi("testframe.ui", self)
dlg_testfr.pbClose.clicked.connect(self.slotClose)
dlg_testfr.frame1.hide()
dlg_testfr.frame2.hide()
self.makeActions()
self.makeMenu()
self.show()
def makeActions(self):
self._exitAction = QtGui.QAction("&Ende", None)
self._helpAction = QtGui.QAction("Hilfe!", None)
self._inputAction = QtGui.QAction("Eingabe", None)
self.connect(self._exitAction, QtCore.SIGNAL('triggered()'), self.slotClose)
self.connect(self._helpAction, QtCore.SIGNAL('triggered()'), self.slotHelp)
self.connect(self._inputAction, QtCore.SIGNAL('triggered()'), self.slotEingabe)
def makeMenu(self):
menuBar = self.menuBar()
fileMenu = menuBar.addMenu("&Datei")
fileMenu.addAction(self._exitAction)
workMenu = menuBar.addMenu("&Rezepte")
workMenu.addAction(self._inputAction)
helpMenu = menuBar.addMenu("&Hilfe")
helpMenu.addAction(self._helpAction)
# Slots
def slotClose(self):
self.close()
def slotHelp(self):
QtGui.QMessageBox.information(None, "Dies ist die Hilfe", "Hilf dir selbst, sonst hilft dir keiner!")
def slotEingabe(self):
self.dlg_testfr.frame1.show()
if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
dialog = mainframe()
dialog.show()
sys.exit(app.exec_())
Danke für Eure Hilfe und Tipps
Bis dann ...
MfG
Günter