pyQt 每日一练习 -- 登录框

来源:互联网 发布:薛之谦为什么复婚知乎 编辑:程序博客网 时间:2024/05/18 14:22
#coding=utf-8#第一个练习,登录框import sysfrom PyQt4 import QtGui,QtCore#登录框class LoginBox(QtGui.QWidget):    def __init__(self):        super(LoginBox, self).__init__()        self.initUI()    def initUI(self):        vBoxLayout = QtGui.QVBoxLayout()        hBoxLayout_1 = QtGui.QHBoxLayout()        nameLabel = QtGui.QLabel(u"姓名:", self)        self.nameInputEdit = QtGui.QLineEdit(self)        self.nameInputEdit.textChanged.connect(self.inputName)        hBoxLayout_1.addWidget(nameLabel)        hBoxLayout_1.addWidget(self.nameInputEdit)        vBoxLayout.addLayout(hBoxLayout_1)        hBoxLayout_2 = QtGui.QHBoxLayout()        passwordLabel = QtGui.QLabel(u"密码:", self)        self.passwordInputEdit = QtGui.QLineEdit(self)        self.passwordInputEdit.textChanged.connect(self.inputPassword)        hBoxLayout_2.addWidget(passwordLabel)        hBoxLayout_2.addWidget(self.passwordInputEdit)        vBoxLayout.addLayout(hBoxLayout_2)        hBoxLayout_3 = QtGui.QHBoxLayout()        okBtn = QtGui.QPushButton(u"确定", self)        cancleBtn = QtGui.QPushButton(u"取消", self)        okBtn.clicked.connect(self.clickOkBtn)        cancleBtn.clicked.connect(self.clickCancleBtn)        hBoxLayout_3.addWidget(okBtn)        hBoxLayout_3.addWidget(cancleBtn)        vBoxLayout.addLayout(hBoxLayout_3)        self.setLayout(vBoxLayout)        self.setWindowIcon(QtGui.QIcon("icon.png"))        self.setWindowTitle(u"登录框")        self.resize(300, 150)        self.setCenterPos()    def inputName(self, text):        self.name = text        print "input name is " + str(self.name)    def inputPassword(self, text):        self.password = text        print "input password " + str(self.password)    def clickOkBtn(self):        sender = self.sender()        print unicode(sender.text()) + " be clicked"        info = u"姓名:" + str(self.name) + u" 密码:" + str(self.password)        reply = QtGui.QMessageBox.question(self, u"提示", info, QtGui.QMessageBox.Yes, QtGui.QMessageBox.No)        if reply == QtGui.QMessageBox.Yes:            print "right!"        else:            self.nameInputEdit.setText("")            self.passwordInputEdit.setText("")    def clickCancleBtn(self):        sender = self.sender()        print unicode(sender.text()) + " be clicked"        self.close()    def setCenterPos(self):        screen = QtGui.QDesktopWidget().screenGeometry()        selfSize = self.size()        self.move((screen.width() - selfSize.width())/2, (screen.height() - selfSize.height())/2)def main():    app = QtGui.QApplication(sys.argv)    lb = LoginBox()    lb.show()    sys.exit(app.exec_())if __name__ == "__main__":    main()

0 0