Say I have 10 names in a QListWidget
(which is hidden) and an a QLineEdit
. Now if I type the letter "a" in the line Edit it should display a drop down of all those name in the list widget that begin with the letter "A". the user could select using a mouse or a keyboard (since there will be a vertical scroll-bar). I am not sure if a QLineEdit
could do this. But I would like to know what is out there to accomplish this.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
You can use QCompleter
which provides a way for autocompletion in widgets like QLineEdit
and QComboBox
. When the user starts typing a word, QCompleter
suggests possible ways of completing the word, based on a word list.
An example from the Qt documentation:
QStringList wordList;
wordList << "alpha" << "omega" << "omicron" << "zeta";
QLineEdit *lineEdit = new QLineEdit(this);
QCompleter *completer = new QCompleter(wordList, this);
completer->setCaseSensitivity(Qt::CaseInsensitive);
lineEdit->setCompleter(completer);