Ich mache gerade meine ersten Gehversuche mit QtDesigner und versuche, ein Programm zu erstellen das mir eine Kurve plottet.
Das Fenster zeigt mir Achsen und Titel, ich kann die Skalierung einstellen, etc., nur die Kurve selbst, die ich zeichnen will, erscheint nicht. Wahrscheinlich ein Anfängerfehler, und ich verstehe einfach die Klassenphilosophie nicht (komme noch aus der FORTRAN Ecke, das sagt wahrscheinlich alles).
Wenn ich den ganzen Ballast aus meiner Widget-Klasse rausschmeiße, bleibt noch folgender Code übrig.
Code: Alles auswählen
from PyQt4 import QtCore, QtGui
from PyQt4.Qwt5 import QwtPlot,QwtPlotCurve
from abaquse_ui import Ui_ABAQuse as Dlg
import sys
class MeinWidget(QtGui.QMainWindow, Dlg):
def __init__(self):
#-- Original stuff
QtGui.QMainWindow.__init__(self)
self.setupUi(self)
#-- End of Original stuff
#
# my changes
DrawButton = self.pushButton_2
DrawButton.setEnabled(True)
self.connect(DrawButton, QtCore.SIGNAL("clicked()"), self.onDraw)
def onDraw(self):
Plot = self.qwtPlot
Plot.setAxisTitle(QwtPlot.xBottom,"time history (days)")
Plot.setAxisTitle(QwtPlot.yLeft,"Number of jobs")
Curve = QwtPlotCurve("test")
Curve.x = [0.,0.5,1.0,1.5,2.0]
Curve.y = [0.,1.,1.5,1.,0.]
Curve.attach(Plot)
Plot.replot()
#main loop until OK or Cancel is pressed
app = QtGui.QApplication(sys.argv)
widget = MeinWidget()
widget.show()
sys.exit(app.exec_())

Liebe Grüße und Dank im Voraus.
Ingo