0

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

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

1 回答 1

0

我找到了解决方案。我所做的是,将QListBox's(QComboBox有一个列表框)keyPressEvent'sQKeyEvent传递给QComboBox's LineEdit。keyPressEvent在使用它调用的 LineEdit 内部覆盖QKeyEvent

于 2012-12-06T06:23:06.563 回答