Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: AleExp от Май 28, 2009, 13:47



Название: Как привязать QlistBox к текстовому курсору?
Отправлено: AleExp от Май 28, 2009, 13:47
Добрый день, уважаемые. По объективным причинам работаю с библиотекой QT 3.3.4
Необходимо реализовать механизм контекстной помощи, что-то типа ниспадающего списка с вариантом возможных слов при вводе текста в QtextEdit.
Ни как не могу привязать координаты виджета QlistBox к текстовому курсору.
Алгоритм вцелом ясен - получить координаты текстового курсора, и передать их в QlistBox::x() и QlistBox::y(), вот только не получается сделать банально
Цитировать
QTextCursor cursor(textEdit1->textCursor());
, пишет
Цитировать
error C2248: 'QTextEdit::textCursor' : cannot access protected member declared in class 'QTextEdit'
. Файла как такового qtextcursor.h нету.


Название: Re: Как привязать QlistBox к текстовому курсору?
Отправлено: BaltikS от Май 28, 2009, 17:58
Что то странно, вопрос про QListBox, а в коде QTextEdit... Да и вообще листбокс насколько я помню - не редактируемый, значит речь идёт всё таки о QTextEdit... Прийдётся наследоваться...даже в дизайнере, в редакторе кода был Completer, так вот можно глянуть его код! access protected - думаю говорит само за себя...


Название: Re: Как привязать QlistBox к текстовому курсору?
Отправлено: Valeriy от Май 28, 2009, 23:36
Глянь этот пример: http://doc.trolltech.com/4.5/tools-customcompleter.html

Там правда для 4.5, но большой разницы не должно быть.


Название: Re: Как привязать QlistBox к текстовому курсору?
Отправлено: sLiva от Май 28, 2009, 23:48
Глянь этот пример: http://doc.trolltech.com/4.5/tools-customcompleter.html

Там правда для 4.5, но большой разницы не должно быть.

Учитывая что QCompleter появился начиная с версии 4.2, скорее его исходник нужно копать


Название: Re: Как привязать QlistBox к текстовому курсору?
Отправлено: AleExp от Май 29, 2009, 07:58
Да, QCompliter в QT 3.3.4 отсутствует. Возможно ли с QT 4.x его прикрутить к проекту?