龙空技术网

python Qt Designer lineEdit设置前置或者后置图标遇到得坑

3tang 51

前言:

现时同学们对“pythonqtdesigner”大致比较看重,你们都想要剖析一些“pythonqtdesigner”的相关知识。那么小编在网上网罗了一些有关“pythonqtdesigner””的相关资讯,希望朋友们能喜欢,我们快快来了解一下吧!

近期实现UI设计师的登陆窗口,用户名和密码 输入框前面有个图标。

Qt Designer 里lineEdit控件属性面板没有设置图标的地方。

问chatGPT,给出了让人啼笑皆非的答案

看来AI也不行,只能自己摸索。从二个方面开始尝试:

1、stylesheet里尝试设置

self.loginEdit.setStyleSheet("border-radius: 10px; border: 1px groove gray;border-style: outset;padding: 2 2 2 20;background-image: url(:img/pwd.png); background-repeat:no-repeat; background-position: left;")

发现也不报错,但是图标就是显示不出来

2、然后参考c版本在setAction里设置

C代码是这么实现的

const QIcon passwordIcon(":/img/passwd.png");ui->password->setClearButtonEnabled(true);ui->password->addAction(passwordIcon, QLineEdit::LeadingPosition);

那么python怎么实现呢,代码如下:

loginEditIcon = QtGui.QIcon("img/pwd.png")self.loginEdit.addAction(loginEditIcon,QtWidgets.QLineEdit.LeadingPosition)

最后完美展现

标签: #pythonqtdesigner