在我的应用程序中,我有一个搜索功能,您可以在QComboBox中输入搜索文本(列表中包含历史记录),我还有一个搜索按钮。如果我写一个搜索字符串并按回车键,我会得到一个currentIndexChanged并可以开始搜索。如果我在列表中选择一个项目,则相同。如果我按下搜索按钮,我可以从组合框中获取当前项目并开始搜索。
但是,有一个特殊情况我试图解决。如果我在没有按Enter键的情况下编写搜索文本然后按搜索按钮,则书面文本不会在当前索引的列表中结束。我认为解决这个问题的最简单方法是搜索按钮会触发组合框上的输入事件,但我还没有办法做到这一点......
答案 0 :(得分:1)
我通过在按钮事件处理程序中执行此操作来解决它:
self.comboBox_find.keyPressEvent(QKeyEvent(QEvent.KeyPress, QtCore.Qt.Key_Enter, QtCore.Qt.NoModifier))