【问题标题】:QComboBox : select on Key_spaceQComboBox : 在 Key_space 上选择
【发布时间】:2010-10-12 04:40:40
【问题描述】:

我在嵌入式系统中开发 Qt 应用程序,我只有一个遥控器,其主键是 Key_space。

所以,我想要一个 QComboBox,您可以在按下 Key_space 按钮时选择一个项目。

怎么做?也许我应该继承 QComboBox 并重新定义 keyPressEvent ?

【问题讨论】:

    标签: qt qcombobox


    【解决方案1】:

    如果 Qt 还没有处理这个问题(我认为它已经处理了,但可能是错误的),那么您需要做的不仅仅是处理组合框中的按键事件。当您为组合框选择项目时,将显示另一个窗口,其中包含项目列表。您需要以某种方式处理该窗口的按键事件。

    为此,我建议从QComboBox 继承,并在显示的弹出窗口上安装event filter(查看showPopup()hidePopup()view() 函数)。创建一个连接到highlighted 信号的插槽,并跟踪突出显示的索引。然后,当弹出窗口获得空格键事件时,隐藏弹出窗口并将当前索引设置为最后突出显示的索引。

    【讨论】:

    • Qt 不能用 de Qt::Key_Space 处理这个问题,但是感谢您的回答,它现在对我有用。
    猜你喜欢
    • 2010-11-22
    • 2016-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-29
    • 2012-03-29
    相关资源
    最近更新 更多