Автозаполнение в wxPython wxComboBox - PullRequest
9 голосов
/ 29 октября 2010

Я пытался создать ComboBox, который предлагал бы варианты при вводе, во многом как подсказки / смысл кода в среде IDE, или подсказки googles при вводе в поиске.

В качестве предложений будут использоваться элементы из раскрывающегося списка ComboBox, в котором содержится подстрока, введенная в текстовом поле ComboBox.

Я пытался заставить ComboBox делать это, но не повезло, я пытался замаскировать ComboBox и даже пытался создать подкласс ComboCrtl, но я всегда сталкивался с проблемами либо с точки зрения производительности, либо не имея возможности делать то, что я хочу

В моем списке предметов (предложений) около 2500 пунктов, и я просто очищаю ComboBox и вставляю элементы, которые совпадают, слишком медленно.

Как мне создать такой ComboBox, или я могу использовать даже встроенную функцию?

Я могу допустить небольшую задержку, прежде чем будут показаны предложения, но, по моему мнению, целое окно, висящее на секунду или две, неприемлемо.

1 Ответ

10 голосов
/ 29 октября 2010

Несколько лет назад я создал такой элемент управления, создав подкласс TextCtrl. Он поддерживает форматирование HTML для предложений. Вот, пожалуйста.

Также есть поле со списком , предлагающее варианты

...