summaryrefslogtreecommitdiffstats
path: root/python/pyqt/examples2/tut7.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/pyqt/examples2/tut7.py')
-rwxr-xr-xpython/pyqt/examples2/tut7.py57
1 files changed, 57 insertions, 0 deletions
diff --git a/python/pyqt/examples2/tut7.py b/python/pyqt/examples2/tut7.py
new file mode 100755
index 00000000..d40ae749
--- /dev/null
+++ b/python/pyqt/examples2/tut7.py
@@ -0,0 +1,57 @@
+#!/usr/bin/env python
+
+# Qt tutorial 7.
+
+import sys
+from qt import *
+
+
+class LCDRange(QVBox):
+ def __init__(self,parent=None,name=None):
+ QVBox.__init__(self,parent,name)
+
+ lcd = QLCDNumber(2,self,'lcd')
+ self.slider = QSlider(Qt.Horizontal,self,'slider')
+ self.slider.setRange(0,99)
+ self.slider.setValue(0)
+ self.connect(self.slider,SIGNAL('valueChanged(int)'),lcd,SLOT('display(int)'))
+ self.connect(self.slider,SIGNAL('valueChanged(int)'),self,PYSIGNAL('valueChanged(int)'))
+
+ def value(self):
+ return self.slider.value()
+
+ def setValue(self,value):
+ self.slider.setValue(value)
+
+
+class MyWidget(QVBox):
+ def __init__(self,parent=None,name=None):
+ QVBox.__init__(self,parent,name)
+
+ quit = QPushButton("Quit",self,"quit")
+ quit.setFont(QFont("Times",18,QFont.Bold))
+
+ self.connect(quit,SIGNAL("clicked()"),qApp,SLOT("quit()"))
+
+ grid = QGrid(4,self)
+
+ self.lcdlist = []
+ previous = None
+
+ for r in range(4):
+ for c in range(4):
+ lr = LCDRange(grid)
+
+ if previous is not None:
+ self.connect(lr,PYSIGNAL("valueChanged(int)"),previous.setValue)
+
+ previous = lr
+ self.lcdlist.append(lr)
+
+
+a = QApplication(sys.argv)
+
+w = MyWidget()
+a.setMainWidget(w)
+w.show()
+a.exec_loop()