Как обнаружить щелчок мыши в GtkComboBox? - PullRequest
3 голосов
/ 05 февраля 2012

ALL, В GTK + есть виджет под названием GtkComboBox. Я не знаю деталей реализации, но в Windows она состоит из 2 виджетов: текстовый контроль и список управления. Также есть маленькая кнопка справа от текстового элемента управления. Если вы нажмете эту кнопку, появится элемент управления списком.

Мой вопрос: как мне обнаружить щелчок мыши по этой кнопке в GtkComboBox? Является ли такой щелчок даже сигналом, который можно поймать, или он просто посылает всплывающий сигнал в виджет GtkComboBox и съедает щелчок мыши?

Кстати, это тоже составной виджет в GTK +?

Пример на любом языке был бы очень полезен.

Спасибо.

1 Ответ

2 голосов
/ 05 февраля 2012

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

Похоже, что вы идете вверх по течению, если вы действительно хотите захватывать щелчки мыши в поле со списком - в конце концов, у пользователей есть другие способы использования виджета (например, с помощью клавиатуры). GtkComboBox выдает сигнал changed каждый раз, когда изменяется выбор - можете ли вы использовать его в своем приложении?

...