Название: QCompleter и возможность редактирования QLineEdit Отправлено: nixman05 от Июнь 06, 2010, 16:35 На виджете расположен QLineEdit на который установлен QCompleter
Код
Периодически возникает необходимость добавления элементов в модель QCompleter'а Код
Модель обновляется и при наборе появляются добавленые элементы. Но после потери фокуса eText, он перестает быть редактируемым. Установка eText->setReadOnly(false) никчему не приводит. Название: Re: QCompleter и возможность редактирования QLineEdit Отправлено: ритт от Июнь 08, 2010, 07:46 completer->setModel(model);
completer->popup()->update(); закомментировать или убрать к богам. читать документацию по модель-представление. Название: Re: QCompleter и возможность редактирования QLineEdit Отправлено: nixman05 от Июнь 08, 2010, 17:01 completer->setModel(model); completer->popup()->update(); закомментировать или убрать к богам. читать документацию по модель-представление. Есть справочник, представляющий из себя QStandardItemModel. QCompleter основывается на нем: Код
И при наборе в eText какого либо текста происходит автодополнение. Все работает. Но периодически возникает необходимость добавлять в справочник дополнительные значения. Я реализуюю это приведенным мною способом. Справочник обновляется, и новые элементы добавляются при вводе. А проблема в том, что когда после обновления справочника, eText теряет фокус, он становится нередактируемым. Название: Re: QCompleter и возможность редактирования QLineEdit Отправлено: ритт от Июнь 08, 2010, 23:22 ну, давай минимальный компилябельный пример - посмотрим.
в противном случае могу повторить предыдущий пост... Название: Re: QCompleter и возможность редактирования QLineEdit Отправлено: nixman05 от Июнь 09, 2010, 22:17 ну, давай минимальный компилябельный пример - посмотрим. Прикрепляю минимальный компилябильный пример. P.S. Если что, то я использую Qt 4.5 Название: Re: QCompleter и возможность редактирования QLineEdit Отправлено: ритт от Июнь 10, 2010, 01:19 Qt 4.7: проблема не воспроизводится. или я что-то не так понял/не так делаю, но eText не перестаёт быть редактируемым...
зы. и всё же completer->setModel(model) и completer->popup()->update() при добалении элемента не нужны Название: Re: QCompleter и возможность редактирования QLineEdit Отправлено: ритт от Июнь 10, 2010, 01:22 о, нашёл старую завалящую 4.5.1 - результат тот же.
|