我一直在尝试在 PyQt5 中获取一个 QComboBox
以从数据库表中填充。问题是试图找到一种识别点击事件的方法。
在我的 GUI 中,我的组合框最初是空的,但在单击它时我希望单击事件激活我与数据库通信并填充下拉列表的方法。到目前为止,组合框的点击事件似乎没有内置的事件处理程序。我希望我在这件事上是错的。我希望有人能够告诉我有办法做到这一点。
我在这里的用例中可以找到的最好的文章来自此链接,该链接引用 PyQt4 QComboBox
:
我还找到了另一个链接,其中包含 QComboBox
的漂亮图像。第一个元素似乎是一个标签,后面是一个列表:
原文由 Palu 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以覆盖 showPopup 方法来实现此目的,无论下拉列表如何打开(即通过鼠标、键盘或快捷方式),它都将起作用:
但是,对于您的特定用例,我认为更好的解决方案可能是在组合框上设置 QSqlQueryModel ,以便自动从数据库更新项目。