QCompleter强制双重进入

时间:2010-02-09 14:45:06

标签: c++ qt qcombobox qcompleter

我有一个QCompleter,它强制我的用户在弹出窗口可见但不用于选择项目时按两次输入。与完成相关联的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”),其中有更长的完成可用,并且他们在没有从弹出窗口中选择任何东西的情况下击中(即既没有激活,也没有激活,也没有被激活),那么他们就会再次进入处理他们输入的文本。有一个简单的方法吗?

感谢

1 个答案:

答案 0 :(得分:0)

我尝试使用Qt 4.6.2和Visual 2008,你所描述的情况不会发生。 project available如果您想尝试。

编译,开始,键入'something'然后在组合框中返回:它已注册,键入'some'并返回:你的组合框现在有“some”和“somewhere”