在英文Qt论坛看到的解决办法
def editingFinished_triger(self):
#self.sender() is the QlineEdit
if not self.sender().isModified():
return
self.sender().setModified(False)
#treat code ...
#treat code ...
下面是一个错误使用editingFinished的例子
在上面界面中有一个文本框和一个查询按钮,editingFinished连接查询代码,查询按钮连接查询代码。发现回车触发两次editingFinished,按上面解决后,第二天在另一台电脑上突然又发现有两次触发情况(可能是重新设计界面导致的)。调试发现是回车后按钮click事件被自动触发了,更改按钮 focus为noFocus后,解决了这种情况。然而,事情并未结束。如果输入后不打回车,点击查询按钮,查询代码会执行两次:一次由于editingFinished,一次由于按钮click。看来editingFinished不能用于这里,改用returnPressed 事件,一切终于正常了。