прикрепление сигнала щелчка мыши в Каире - PullRequest
0 голосов
/ 05 ноября 2011

Мне было интересно, можно ли прикрепить сигнал щелчка мыши к объекту Каира.Предположим, у меня есть 3 круга на чертеже, все отдельные объекты.Затем я хотел бы изменить цвет тех, на которых я нажимаю.Я думаю, я мог бы просто взять координаты указателя мыши, пройти через все объекты и посмотреть, какой из них ближе всего.Это может быть хорошо для обычных объектов, но может стать немного громоздким для нарисованных от руки линий.Итак, мой вопрос заключается в том, существует ли элегантный способ узнать, по какому объекту щелкнул пользователь?Я думал, что, возможно, можно подключить сигнал мыши, когда вы рисуете объекты, а затем просто возвращать имя объекта, когда есть щелчок мыши.Я использую pygtk, но я думаю, что ответ не должен быть конкретным для фактической привязки языка.

Cheers,

v923z

1 Ответ

0 голосов
/ 06 ноября 2011

Каир просто рисует, он не отслеживает, где находятся нарисованные объекты.Так что ответ - нет.Вы должны будете отслеживать в своем собственном коде, где находится каждый объект.Я бы порекомендовал использовать библиотеку canvas, такую ​​как GooCanvas, это больше подходит для работы, которую вы описываете.

...