PyQt5:LineEdit和PushButton的结合使用实例

大家好,我是面向大佬编程的菜鸟角角。我最近在写一个表格分析小工具,主界面上面有2个LineEdit,也就是单行输入框控件,是让用户输入表格路径的。

现在有3种情况:

  • 第1种:用户没输入或者内容为空,后面的按钮就显示灰色图标。

  • 第2种:用户输入了,但是路径是错的,后面按钮就显示红色图标。

  • 第3种:用户输入正确,后面按钮就显示绿色图标。

如下图所示:

关键代码如下:

# 设置按钮图标
self.pushButton.setIcon(QIcon('./images/输入正确.png'))
# 设置按钮图标大小(这个也可以在Qt Designer中提前设置好)
self.pushButton.setIconSize(QSize(25, 25))

完整代码如下:

    self.lineEdit.textChanged.connect(self.path_check_ld1)
    self.lineEdit_2.textChanged.connect(self.path_check_ld2)

def path_check_ld1(self, text):
    if text:
        try:
            df_1 = pd.read_excel(f'{text}')
            self.pushButton.setIcon(QIcon('./images/表单完成2.png'))
        except:
            self.pushButton.setIcon(QIcon('./images/删除文件.png'))

    else:
        self.pushButton.setIcon(QIcon('./images/等待文件.png'))


def path_check_ld2(self, text):
    if text:
        try:
            df_1 = pd.read_excel(f'{text}')
            self.pushButton_2.setIcon(QIcon('./images/表单完成2.png'))
        except:
            self.pushButton_2.setIcon(QIcon('./images/删除文件.png'))

    else:
        self.pushButton_2.setIcon(QIcon('./images/等待文件.png'))

补充说明:

  • 这里用到了Python中处理异常的try语句,它常用的2种风格:

  • try:可能异常代码,except:异常的处理方式 ,else:无异常的处理方式

  • try:可能异常代码,finally:对错都运行

  • 可以看到上面2个自定义函数中都是有text参数的,这是因为LineEdit的textChanged()信号是会返回LineEdit里面的文本内容的。就是因为我不知道这个特性,本来很简单的代码,我绕了一堆弯路。

特别鸣谢:

最后,万分感谢群内昵称为讨厌自己的大佬,是这个小哥哥帮我解决的。言多无益,唯有一句:好人一生平安!

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

喵呜角角

如果对你有所帮助,哪怕1毛钱~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值