Как создать персонализированный ContactList с Qt - PullRequest
1 голос
/ 27 июня 2010

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

Может быть, с представлением дерева, но я не уверен.

Мне нужен способ просмотра групп, в которых есть контакты. Контакт содержит различную информацию и кнопки действий, такие как «Отправить сообщение, Просмотреть информацию, ...»

Пример @ http://ycorpblog.com/wp-content/uploads/2007/10/yahoo-messenger-90-action-toolbar.jpg

1 Ответ

0 голосов
/ 01 июля 2010

вот я в своем маленьком исследовании. Я унаследовал один из моих классов QAbstractItemDelegate.

Я переопределяю paint () и sizeHint ()

в paint () для рисования моих предметов (а здесь например кнопка) Код:

QStyleOptionButton buttonStyle;
buttonStyle.rect = option.rect;
buttonStyle.features = QStyleOptionButton::AutoDefaultButton;
buttonStyle.text = "Salut!";

QApplication::style()->drawControl(QStyle::CE_PushButton,&buttonStyle,painter);

Но тогда это требует повторной реализации QAbstractItemDelegate: helpEvent (), чтобы получить действия нажатия кнопок (сравнить положение мыши по сравнению с моим рисунком и определить, что пользователь нажимает)?

Более того, с решением, предложенным выше,

QAbstractItemDelegate :: helpEvent () - это слот

Несмотря на тщательное чтение документации, я не могу определить, когда вызывается эта функция, она к чему-то подключается?

Я также бросил взгляд на editorEvent (), хорошо восстановил щелчок мыши, но не смог точно узнать, где пользователь нажал, поэтому нет способа узнать, кнопка это или другой элемент.

Я спросил о методе, который я тоже использую. Это хорошо? Ты можешь просветить меня?

В ожидании ваших ответов / идей. Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...