diff options
Diffstat (limited to 'python/pyqt/examples3/lineedits.py')
-rwxr-xr-x | python/pyqt/examples3/lineedits.py | 140 |
1 files changed, 140 insertions, 0 deletions
diff --git a/python/pyqt/examples3/lineedits.py b/python/pyqt/examples3/lineedits.py new file mode 100755 index 00000000..631d14be --- /dev/null +++ b/python/pyqt/examples3/lineedits.py @@ -0,0 +1,140 @@ +#!/usr/bin/env python + +#**************************************************************************** +#** $Id$ +#** +#** Copyright (C) 1992-1998 Troll Tech AS. All rights reserved. +#** +#** This file is part of an example program for PyQt. This example +#** program may be used, distributed and modified without limitation. +#** +#*****************************************************************************/ + +import sys +from qt import * + +TRUE = 1 +FALSE = 0 + +class LineEdits(QGroupBox): + def __init__(self, parent = None, name = None): + QGroupBox.__init__(self, 0, Qt.Horizontal, "Line Edits", parent, name) + + self.setMargin(10) + + box = QVBoxLayout(self.layout()) + + row1 = QHBoxLayout(box) + row1.setMargin(5) + + label = QLabel("Echo Mode: ", self) + row1.addWidget(label) + + combo1 = QComboBox(FALSE, self) + row1.addWidget(combo1) + combo1.insertItem("Normal", -1) + combo1.insertItem("Password", -1) + combo1.insertItem("No Echo", -1) + + self.connect(combo1, SIGNAL("activated(int)"), self.slotEchoChanged) + self.lined1 = QLineEdit(self) + box.addWidget(self.lined1) + + row2 = QHBoxLayout(box) + row2.setMargin(5) + + label = QLabel("Validator: ", self) + row2.addWidget(label) + + combo2 = QComboBox(FALSE, self) + row2.addWidget(combo2) + combo2.insertItem("No Validator", -1) + combo2.insertItem("Integer Validator", -1) + combo2.insertItem("Double Validator", -1) + + self.connect(combo2, SIGNAL("activated(int)"), self.slotValidatorChanged) + + self.lined2 = QLineEdit(self) + box.addWidget(self.lined2) + + row3 = QHBoxLayout(box) + row3.setMargin(5) + + label = QLabel("Alignment: ", self) + row3.addWidget(label) + + combo3 = QComboBox(FALSE, self) + row3.addWidget(combo3) + combo3.insertItem("Left", -1) + combo3.insertItem("Centered", -1) + combo3.insertItem("Right", -1) + + self.connect(combo3, SIGNAL("activated(int)"), self.slotAlignmentChanged) + self.lined3 = QLineEdit(self) + box.addWidget(self.lined3) + + row4 = QHBox(self) + box.addWidget(row4) + row4.setMargin(5) + + QLabel("Read-Only: ", row4) + + combo4 = QComboBox(FALSE, row4) + combo4.insertItem("False", -1) + combo4.insertItem("True", -1) + + self.connect(combo4, SIGNAL("activated(int)"), self.slotReadOnlyChanged) + + self.lined4 = QLineEdit(self) + box.addWidget(self.lined4) + + self.lined1.setFocus() + + def slotEchoChanged(self, i): + if i == 0: + self.lined1.setEchoMode(QLineEdit.Normal) + elif i == 1: + self.lined1.setEchoMode(QLineEdit.Password) + elif i == 2: + self.lined1.setEchoMode(QLineEdit.NoEcho) + + self.lined1.setFocus() + + def slotValidatorChanged(self, i): + if i == 0: + self.lined2.setValidator(None) + elif i == 1: + self.lined2.setValidator(QIntValidator(self.lined2)) + elif i == 2: + self.lined2.setValidator(QDoubleValidator(-999.0, 999.0, 2, self.lined2)) + + self.lined2.setText("") + self.lined2.setFocus() + + def slotAlignmentChanged(self, i): + if i == 0: + self.lined3.setAlignment(QLineEdit.AlignLeft) + elif i == 1: + self.lined3.setAlignment(QLineEdit.AlignCenter) + elif i == 2: + self.lined3.setAlignment(QLineEdit.AlignRight) + + self.lined3.setFocus() + + def slotReadOnlyChanged(self, i): + if i == 0: + self.lined4.setReadOnly(FALSE) + elif i == 1: + self.lined4.setReadOnly(TRUE) + + self.lined4.setFocus() + + +if __name__=='__main__': + app = QApplication( sys.argv ) + + lineedits = LineEdits() + lineedits.setCaption("Lineedits - PyQt Example") + lineedits.show() + app.setMainWidget(lineedits) + app.exec_loop() |