LINUX.ORG.RU

[GUI]Как быстро определить какая кнопка на экране нажата

 


0

3

В силу некоторых причин пишу свой GUI.

В мою функцию передаётся что сделали (нажали или отжали), код кнопки и где нажали (x и y).

В окне есть мои кнопочки. Сейчас сделано так: перебираются по очереди эти кнопочки — сравнивается x и y с координатами каждой и как только окажется что x и y внутри кнопки — вызывается функция-обработчик для этой кнопки.

Меня терзают смутные сомнения по поводу эффективности такого метода поиска кнопки которую нажали. Может быть есть более эффективный метод?

★★★

Последнее исправление: LinuxUser (всего исправлений: 1)
Ответ на: комментарий от AIv

Использовался метод сравнения координат каждой кнопки.

Создал 10 000 000 кнопок. У них у каждой был обработчик движения мышки. Водил мышкой в тех местах где кнопок нет, чтоб проверялись все кнопки на каждое движение.

Однако, НЕ тормозит! Процессор всего на 1% кушается.

Эти 10 000 000 кнопок кстати жрут 864 мегабайта оперативки.

А я волновался. Оптимизация действительно не нужна. По крайней мере пока. В случае чего оптимизировать можно будет на любом этапе разработки, уже прикинул как.

LinuxUser ★★★
() автор топика
Ответ на: комментарий от anonymous

Есть такое, но у тебя тоже кошко.

но у меня четко видно это :)

tazhate ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.