我有一个QCompleter,它强制我的用户在弹出窗口可见但不用于选择项目时按两次enter键。与完成项关联的QComboBox的模型用作完成器的模型。
QCompleter *completer = new QCompleter(this);
completer->setCaseSensitivity(Qt::CaseInsensitive);
completer->setCompletionMode(QCompleter::PopupCompletion);
completer->setModel(this->ui->comboBox->model());
this->ui->comboBox->setCompleter(completer);当用户输入项目时,可能的补全列表会增加。如果他们开始键入较短的补全(例如"dir"),而有较长的补全可用,并且他们在没有从弹出窗口中选择任何内容的情况下点击(即既不是激活的,也不是高亮的,也不是索引更改的被解雇的),则他们被迫再次按回车键来处理他们输入的文本。有什么简单的方法可以解决这个问题吗?
谢谢
发布于 2011-04-15 02:09:06
我用Qt 4.6.2和Visual 2008试过了,你所描述的情况并没有发生。如果您想尝试,请使用project available。
编译,启动,输入'something‘,然后在combobox中返回:它已注册,输入'some’,然后返回:你的combobox现在有"some“和"somewhere”
https://stackoverflow.com/questions/2229874
复制相似问题