bin gerade dabei mich in pyqt4 reinzufuchsen...und nebenbei auch noch in die Python Grundlagen.
Ich will eine Anwenung progammieren, die über den calendar nach klicken eines buttons das ausgewälte datum zur Weiterverarbeitung herausgibt.
Dazu habe ich gedacht die selectedDate() Methode des Calendars zu nehmen. Sah relativ unproblematisch für mich aus...aber dann diese Fehler bei den Folgenden dateien:
die konvertierte pyqt Datei:
Code: Alles auswählen
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'rechnungsgen.ui'
#
# Created: Tue Nov 03 20:52:48 2009
# by: PyQt4 UI code generator 4.5.4
#
# WARNING! All changes made in this file will be lost!
from PyQt4 import QtCore, QtGui
class Ui_rechnungsgen(object):
def setupUi(self, rechnungsgen):
rechnungsgen.setObjectName("rechnungsgen")
rechnungsgen.resize(695, 428)
self.centralwidget = QtGui.QWidget(rechnungsgen)
self.centralwidget.setObjectName("centralwidget")
self.calendar = QtGui.QCalendarWidget(self.centralwidget)
self.calendar.setGeometry(QtCore.QRect(10, 40, 371, 201))
self.calendar.setMinimumDate(QtCore.QDate(2008, 9, 14))
self.calendar.setFirstDayOfWeek(QtCore.Qt.Monday)
self.calendar.setObjectName("calendar")
self.button_billprint = QtGui.QPushButton(self.centralwidget)
self.button_billprint.setGeometry(QtCore.QRect(10, 250, 131, 23))
self.button_billprint.setObjectName("button_billprint")
self.label_expl = QtGui.QLabel(self.centralwidget)
self.label_expl.setGeometry(QtCore.QRect(10, 10, 361, 16))
self.label_expl.setObjectName("label_expl")
self.button_close = QtGui.QPushButton(self.centralwidget)
self.button_close.setGeometry(QtCore.QRect(290, 250, 91, 23))
self.button_close.setObjectName("button_close")
rechnungsgen.setCentralWidget(self.centralwidget)
self.menubar = QtGui.QMenuBar(rechnungsgen)
self.menubar.setGeometry(QtCore.QRect(0, 0, 695, 22))
self.menubar.setObjectName("menubar")
rechnungsgen.setMenuBar(self.menubar)
self.statusbar = QtGui.QStatusBar(rechnungsgen)
self.statusbar.setObjectName("statusbar")
rechnungsgen.setStatusBar(self.statusbar)
self.retranslateUi(rechnungsgen)
QtCore.QObject.connect(self.button_close, QtCore.SIGNAL("clicked()"), rechnungsgen.close)
QtCore.QObject.connect(self.button_billprint, QtCore.SIGNAL("clicked()"), self.calendar.showSelectedDate)
QtCore.QMetaObject.connectSlotsByName(rechnungsgen)
def retranslateUi(self, rechnungsgen):
rechnungsgen.setWindowTitle(QtGui.QApplication.translate("rechnungsgen", "MainWindow", None, QtGui.QApplication.UnicodeUTF8))
self.button_billprint.setText(QtGui.QApplication.translate("rechnungsgen", "Rechnungen drucken", None, QtGui.QApplication.UnicodeUTF8))
self.label_expl.setText(QtGui.QApplication.translate("rechnungsgen", "Bitte Datum waehlen, um zu den Anmeldungen die Rechnungen zu erhalten! ", None, QtGui.QApplication.UnicodeUTF8))
self.button_close.setText(QtGui.QApplication.translate("rechnungsgen", "Beenden", None, QtGui.QApplication.UnicodeUTF8))
Code: Alles auswählen
import sys
from PyQt4 import QtCore, QtGui
from rechnungsgen import Ui_rechnungsgen
class StartQT4(QtGui.QMainWindow):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.ui = Ui_rechnungsgen()
self.ui.setupUi(self)
QtCore.QObject.connect(self.button_billprint, QtCore.SIGNAL("clicked()"),self.calendar.showSelectedDate)
def selectedDate(self):
print
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
myapp = StartQT4()
myapp.show()
app.exec_()
Traceback (most recent call last):
File "C:\Python26\rechgenstart.py", line 19, in <module>
myapp = StartQT4()
File "C:\Python26\rechgenstart.py", line 10, in __init__
QtCore.QObject.connect(self.button_billprint, QtCore.SIGNAL("clicked()"),self.calendar.showSelectedDate)
AttributeError: 'StartQT4' object has no attribute 'button_billprint'
Vielen Dank für die Mühe für diejenigen, die es sich durchlesen
hab ich button_billprint nicht initialisiert?!
Gruß