使用PyQT更改标签可见性

时间:2015-02-19 06:24:02

标签: python pyqt

我在QtDesigner中创建了一个表单,并使用PyQt将其转换为python文档。在我的QtDesigner文档中,我添加了标记为“您已在表单中成功发送”。我想要做的是隐藏此标签,直到单击提交按钮。由于PyQt文档格式复杂,我很挣扎。

这是提交和标签的代码(submitButton,label_3):

self.submitButton = QtGui.QPushButton(Form)
self.submitButton.setObjectName(_fromUtf8("submitButton"))
self.verticalLayout.addWidget(self.submitButton)
class Ui_Form(QtGui.QWidget):
def setupUi(self, Form):
self.label_3 = QtGui.QLabel(Form)
    self.label_3.setStyleSheet(_fromUtf8("QLabel\n"
"{\n"
"   font: bold 14pt \"helvetica\";\n"
"   color: darkgreen;\n"
"}"))
    self.label_3.setScaledContents(False)
    self.label_3.setWordWrap(False)
    self.label_3.setObjectName(_fromUtf8("label_3"))
    self.verticalLayout.addWidget(self.label_3)
    self.horizontalLayout.addLayout(self.verticalLayout)

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)

以下是我正在做的事情(代码错了,我知道,但希望它可以帮助你理解我的问题。

label_3.hide() == True
if submitButton.clicked
    label_3.show() == True

1 个答案:

答案 0 :(得分:6)

你从哪里粘贴这两段代码片段?在你的MainWindow初始化?无论是什么,您可能希望在创建按钮后立即隐藏它:

self.label_3 = QtGui.QLabel(Form)
self.label_3.hide()

将按钮的clicked signal连接到标签的show()方法:

self.submitButton.clicked.connect(self.label_3.show)