pyqt判断文本框是否获取焦点
时间: 2023-09-25 15:12:07 浏览: 76
文本框获得焦点
5星 · 资源好评率100%
在PyQt中,您可以使用`hasFocus()`方法来判断文本框是否获取了焦点。以下是一个示例代码:
```python
from PyQt5.QtWidgets import QApplication, QLineEdit, QWidget, QVBoxLayout
def check_focus():
if lineEdit.hasFocus():
print("文本框获取了焦点")
else:
print("文本框失去了焦点")
app = QApplication([])
widget = QWidget()
layout = QVBoxLayout(widget)
lineEdit = QLineEdit()
layout.addWidget(lineEdit)
widget.setLayout(layout)
widget.show()
lineEdit.textChanged.connect(check_focus) # 连接textChanged信号与check_focus函数
app.exec_()
```
在上面的代码中,我们创建了一个QLineEdit控件,并将其添加到QWidget中。然后,我们通过连接`textChanged`信号与`check_focus`函数,在文本框内容发生变化时检查焦点状态。
在`check_focus`函数中,我们使用`hasFocus()`方法来判断文本框是否获取了焦点,并根据结果进行相应的处理。
您可以根据自己的需求,在适当的时机调用`hasFocus()`方法来判断文本框的焦点状态,并根据需要执行相应的操作。
阅读全文