美文网首页
交互状态案例一

交互状态案例一

作者: 有之余 | 来源:发表于2019-11-08 16:28 被阅读0次

# -*- coding: utf-8 -*-

import sys
from PyQt5.Qt import *


class Example(QWidget):

    def __init__(self):
        super().__init__()
        self.setWindowTitle("交互状态")
        self.resize(500,500)
        self.setup_ui()

    def setup_ui(self):
        # 添加三个控件
        label = QLabel(self)
        label.setText('标签')
        label.move(100,50)
        # 隐藏标签
        label.hide()

        le = QLineEdit(self)
        le.setText('文本框')
        le.move(100,100)

        btn = QPushButton(self)
        btn.setText('登录')
        btn.move(100,150)
        # 登录按钮不可用
        btn.setEnabled(False)

        def text_cao(text):
            print("文本内容发生了变化",text)
            # if len(text) > 0:
            #     btn.setEnabled(True)
            # else:
            #     btn.setEnabled(False)
            # 此句等同上面的判断
            btn.setEnabled(len(text))
        le.textChanged.connect(text_cao)

        def check():
            print("按钮被点击了")
            # 1 ,获取文本框内容
            content = le.text()
            # 2 ,判定是否是sz
            if content == "Sz":
                # 3 ,是 -> 显示之前隐藏的提示标签
                # label.show()
                label.setText('登录成功!')
                # 根据自身内容进行 尺寸自适应
                # 如果不加会造成字符被截断
                # label.adjustSize()
            else:
                # label.show()
                label.setText("登录失败")
                # label.adjustSize()
            label.show()
            label.adjustSize()
        btn.pressed.connect(check)


if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    ex.show()
    sys.exit(app.exec_())

相关文章

网友评论

      本文标题:交互状态案例一

      本文链接:https://www.haomeiwen.com/subject/vnkwbctx.html