PyQt5同时显示两个闪烁的光标

2024-05-20 23:00:17 发布

您现在位置:Python中文网/ 问答频道 /正文

这是一个有趣的症状:

当对话框本身有焦点时,同一对话框中的两个不同的QLineEdit字段都有闪烁的光标。你知道吗

video

(目标是在没有焦点的字段中停止闪烁,因为它会导致用户混淆和潜在的用户错误。)

当您选择另一个窗口(即从相关对话框中移除焦点)时,其中一个字段仍有闪烁的光标。你知道吗

再次激活该对话框时,两个字段都会再次闪烁。你知道吗

如果在任一字段中单击鼠标左键,则闪烁的光标将按预期在另一个字段中停止。你知道吗

焦点(即捕获键盘输入的字段)的行为似乎与您预期的一样,即一次只有一个字段接收键盘输入。你知道吗

选项卡序列按预期工作。你知道吗

这是在QtDesigner中构建的,但在下游代码中进行了大量修改。你知道怎么会这样吗?你知道吗

一些类似的问题谈到对话框有自己的事件循环或类似的东西?你知道吗


Tags: 用户症状目标video错误序列鼠标选项卡
1条回答
网友
1楼 · 发布于 2024-05-20 23:00:17

通过反复试验,偶然发现了这个解决方案:只需“打嗝”焦点,即将其设置为您不想眨眼的焦点(在本例中为messageField),然后将其设置为您确实想眨眼的焦点(teamField):

self.newEntryWidget.ui.messageField.setFocus()
self.newEntryWidget.ui.teamField.setFocus()

我不知道为什么会这样,但它似乎确实起作用。希望其他人会发现这个有用。你知道吗

相关问题 更多 >