QLineEdit 中添加Action图标
时间: 2024-05-02 21:21:16 浏览: 197
可以使用 setClearButtonEnabled() 方法在 QLineEdit 中添加清除按钮图标。
示例代码:
```python
from PyQt5.QtWidgets import QApplication, QLineEdit, QWidget, QVBoxLayout
from PyQt5.QtGui import QIcon
import sys
class MainWindow(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 创建一个 QLineEdit 对象
line_edit = QLineEdit(self)
# 设置清除按钮图标
line_edit.setClearButtonEnabled(True)
line_edit.addAction(QIcon("icon.png"), QLineEdit.TrailingPosition)
# 创建一个 QVBoxLayout 布局对象
layout = QVBoxLayout()
layout.addWidget(line_edit)
# 设置窗口布局
self.setLayout(layout)
# 设置窗口标题和大小
self.setWindowTitle("QLineEdit with Action Icon")
self.setGeometry(100, 100, 400, 200)
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
```
在上面的代码中,我们使用了 `setClearButtonEnabled()` 方法设置了清除按钮图标。我们还使用了 `addAction()` 方法添加了一个自定义的图标。可以在 `addAction()` 方法的第一个参数中传入一个 QIcon 对象来设置图标。第二个参数是一个 QLineEdit.ActionPosition 枚举值,用于指定图标的位置。在这个例子中,我们将图标放在了 QLineEdit 的尾部位置。
运行代码,就可以看到 QLineEdit 中添加了 Action 图标和清除按钮图标。
阅读全文