在同一位置隐藏或取消隐藏QLabel

2024-09-28 15:00:02 发布

您现在位置:Python中文网/ 问答频道 /正文

Login Page

我只想在用户名和密码分别不正确的情况下显示“无效用户名”和“无效密码”qlabel,否则我想隐藏它们。在

我尝试使用hide()和show()方法,但是qlabel用show()方法显示在一个单独的弹出窗口中,而不是显示在上面显示的位置(在黑框中)。在

我用Python编写代码。在

请提出建议。在

导入的库:

import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *

代码如下:

^{pr2}$

按钮登录功能

def login(self):

    if (self.UsrName.text() == "Ejaz" and self.Passwd.text() == "test"):
        print "Login Successful!"
    elif self.UsrName.text() <> "Ejaz":
        self.ErrorUsrName.show()
    elif self.Passwd.text() <> "test":
        self.ErrorPasswd.show()

Tags: 方法代码textfromtestimportself密码
1条回答
网友
1楼 · 发布于 2024-09-28 15:00:02

您的问题是以下几行:

self.grid.addWidget(self.ErrorUsrName.hide(),2,0)
...
self.grid.addWidget(self.ErrorPasswd.hide(),4,0)

hide函数不返回QLabel对象,因此您不会将它们添加到网格中。 您应该在其他地方调用hide()函数,例如:

^{pr2}$

这会解决你的问题。在

相关问题 更多 >