Как я могу получить GTKLabel, который изменяется в зависимости от положения мыши?

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

0

Решение

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

Вы должны подключить сигнал к виджету, по которому вы хотите отслеживать мышь. Сигнал от GtkWidget и он называется Движение-уведомит-событие. Обработчик сигнала получит событие с координатами x и y мыши.

Если вы хотите отследить мышь, когда она находится над таблицей GtkTable (которая наследуется от GtkWidget), просто подключите к ней сигнал и попросите функцию обратного вызова обновить GtkLabel.

РЕДАКТИРОВАТЬ:

Как сказал @jku, некоторые виджеты не получают эти события, потому что у них нет GdkWindow. Вероятно, лучшим вариантом будет добавить таблицу в контейнер EventBox, а затем продолжить, как указано ранее. Кроме того, этот вопрос был сделан Вот.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]