使用QComboBox过滤小部件

时间:2012-12-05 11:15:18

标签: c++ qt user-interface qt3

我想使用QComboBox实现Filter小部件。它应该工作的方式是,当我输入字母'a'时,它应该显示以'a'开头的项目,然后如果我输入'b'它应该显示具有前缀'ab'等的项目。通过覆盖keyPressEvent类的QComboBox来尝试,但它没有用。我遇到的主要问题是,当下拉列表出现时,如何使QComboBox可编辑?我正在关键新闻事件中打开下拉列表,如下所示,

void SearchCombo::keyPressEvent(QKeyEvent *e)
{
    ...
    listBox()->popup();
    ...
}

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。我所做的是,将QListBoxQComboBox有一个列表框)keyPressEvent的QKeyEvent传递给QComboBox的LineEdit。使用keyPressEvent

调用LineEdit overrode QKeyEvent内部