Python QT由登陆界面到主界面

      在使用Python QT开发界面的时候,会出现从登陆界面到主界面的一个切换问题。如下所示,用户输入用户名和密码后,如果用户名和密码匹配,则会跳转到主界面,此时登陆界面消失。


       首先需要定义自己需要的对话框,请参考:http://blog.csdn.net/lovelyaiq/article/details/55050580。在代码加入对话中加入对话框退出时的返回值,例如:accept(),reject()。

    def save_button_click(self):
        global Current_user
        Current_user=str(self.lineEdit_name.text())
        self.passwd_input=str(self.lineEdit_wd.text())
        passwd_check=False
        username_check=False
        if not Current_user.endswith("@163.com"):
            QtGui.QMessageBox.warning(self, "Error", u'请检查输入的用户名格式,需要以"@163.com"结尾',
                                           buttons=QtGui.QMessageBox.Ok, defaultButton=QtGui.QMessageBox.Ok)
        else:
            username_check=True
        if self.passwd != self.passwd_input and username_check:
            QtGui.QMessageBox.warning(self, "Error", u'您输入的密码有误 !!!',
                                           buttons=QtGui.QMessageBox.Ok, defaultButton=QtGui.QMessageBox.Ok)
        else:
            passwd_check=True
        if username_check and passwd_check:
            self.accept()
           当用户点击登陆按钮时,软件会检测用户名和密码是否匹配,如果匹配,则返回 accept (),在主程序中需要接受到这个返回值。

    if dialog.exec_()==QtGui.QDialog.Accepted:
        ui = Ui()
        ui.show()
其中dialog.exec_()表示等待登陆界面退出,如果登陆界面退出时的返回值是QtGui.QDialog.Accepted,那么将会启动主界面。

注:在两个界面切换的过程中,使用到了登陆界面退出时的返回值,根据这个返回值判断是否启动主界面。关于exec_()的解释,文档的说明为:

Shows the dialog as a modal dialog, blocking until the user closes it. The function returns a DialogCode result.




  • 4
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值