Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- from __future__ import unicode_literals
- import sys, os, random
- from PyQt4 import QtGui, QtCore
- from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas
- from matplotlib.figure import Figure
- progname = os.path.basename(sys.argv[0])
- progversion = "0.1"
- class MyTextCanvas(FigureCanvas):
- """Ultimately, this is a QWidget (as well as a FigureCanvasAgg, etc.)."""
- def __init__(self, parent=None, width=5, height=4, dpi=100):
- fig = Figure(figsize=(width, height), dpi=dpi)
- self.axes = fig.add_subplot(111)
- # We want the axes cleared every time plot() is called
- self.axes.hold(False)
- self.compute_initial_figure()
- FigureCanvas.__init__(self, fig)
- self.setParent(parent)
- FigureCanvas.setSizePolicy(self,
- QtGui.QSizePolicy.Expanding,
- QtGui.QSizePolicy.Expanding)
- FigureCanvas.updateGeometry(self)
- ########### I added these things below
- self.text = 'this is the initial text'
- self.create_initial_text()
- ###########
- def compute_initial_figure(self):
- pass
- def create_initial_text(self):
- pass
- class myLabelClass(MyTextCanvas):
- """This is my own creaed class which more or less resembles the code above."""
- def __init__(self, *args, **kwargs):
- MyTextCanvas.__init__(self, *args, **kwargs)
- timer = QtCore.QTimer(self)
- QtCore.QObject.connect(timer, QtCore.SIGNAL('timeout()'), self.countUp)
- timer.start(1000)
- def create_initial_text(self):
- QtGui.QLabel(self.text, self)
- def countUp(self):
- for i in xrange(100):
- self.myShinyLabel.setText(str(i))
- class ApplicationWindow(QtGui.QMainWindow):
- def __init__(self):
- QtGui.QMainWindow.__init__(self)
- self.setAttribute(QtCore.Qt.WA_DeleteOnClose)
- self.setWindowTitle("Hielke's programma")
- self.main_widget = QtGui.QWidget(self)
- layout = QtGui.QHBoxLayout(self.main_widget)
- self.myShinyLabel = myLabelClass(self.main_widget)
- layout.addWidget(self.myShinyLabel)
- #dynamicImage = MyDynamicMplCanvas(self.main_widget, width=5, height=4, dpi=100)
- #layout.addWidget(dynamicImage)
- self.main_widget.setFocus()
- self.setCentralWidget(self.main_widget)
- def main():
- qApp = QtGui.QApplication(sys.argv)
- aw = ApplicationWindow()
- aw.setWindowTitle("%s" % progname)
- aw.show()
- sys.exit(qApp.exec_())
- if __name__ == "__main__":
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement