PyQT: Input Widgets - The Main Part (
Page 5 of 5 )
Lastly, here is the "main" part of the application:
class Form1(QDialog):
def __init__(self,parent = None,name = None,modal = 0,fl =
0):
QDialog.__init__(self,parent,name,modal,fl)
if not name:
self.setName("Form1")
self.textLabel1 = QLabel(self,"textLabel1")
self.textLabel1.setGeometry(QRect(30,71,111,30))
self.textLabel1_2 = QLabel(self,"textLabel1_2")
self.textLabel1_2.setGeometry(QRect(30,140,111,30))
self.lineEdit1 = QLineEdit(self,"lineEdit1")
self.lineEdit1.setGeometry(QRect(160,70,181,31))
self.lineEdit2 = QLineEdit(self,"lineEdit2")
self.lineEdit2.setGeometry(QRect(161,140,180,31))
self.checkBox1 = QCheckBox(self,"checkBox1")
self.checkBox1.setGeometry(QRect(30,190,91,21))
self.pushButton1 = QPushButton(self,"pushButton1")
self.pushButton1.setEnabled(1)
self.pushButton1.setGeometry(QRect(30,230,141,21))
self.pushButton1_2 = QPushButton(self,"pushButton1_2")
self.pushButton1_2.setEnabled(1)
self.pushButton1_2.setGeometry(QRect(210,230,141,21))
self.languageChange()
self.resize(QSize(600,480).expandedTo
(self.minimumSizeHint()))
self.clearWState(Qt.WState_Polished)
self.connect(self.lineEdit1,SIGNAL("returnPressed
()"),self.lineEdit2.selectAll)
self.connect(self.pushButton1_2,SIGNAL("clicked
()"),self.lineEdit1.clear)
self.connect(self.pushButton1_2,SIGNAL("clicked
()"),self.lineEdit2.clear)
def languageChange(self):
self.setCaption(self.__tr("Form1"))
self.textLabel1.setText(self.__tr("Host"))
self.textLabel1_2.setText(self.__tr("Port"))
self.pushButton1.setText(self.__tr("Submit"))
self.pushButton1_2.setText(self.__tr("Reset"))
self.checkBox1.setText(self.__tr("Secured"))
self.lineEdit1.setText(self.__tr("192.168.1.1"))
self.lineEdit2.setText(self.__tr("3306"))
def __tr(self,s,c = None):
return qApp.translate("Form1",s,c)
if __name__ == "__main__":
a = QApplication(sys.argv)
QObject.connect(a,SIGNAL("lastWindowClosed()"),a,SLOT
("quit()"))
w = Form1()
a.setMainWidget(w)
a.exec_loop()
That brings us to the end of this discussion. There are certain concepts such as translation and labels that have been used in the example but not explained. Those will be the topics of future discussions along with the remaining input widgets. Till then…