Quest3D - Русскоязычное сообщество

Quest3D => Логика => Тема начата: AngelPOPs от 15 Февраля 2011, 17:29:36



Название: GUI и for loop
Отправлено: AngelPOPs от 15 Февраля 2011, 17:29:36
Нужно вывести много buttons, их кол-во беру из массива.
Через for loop повторяю со смещением.
Все вроде ок, только на наведение и клик реагирует только последняя button-ка.
Нид хелп.
Можно было бы просто накидать в ГУИ контейнер тучу кнопок, но как-то массивно, неудобно и главное, что кол-во кнопок может меняться.
ЗАранее благодарен.


Название: Re: GUI и for loop
Отправлено: →|๖ۣۜDen|← от 15 Февраля 2011, 21:03:17
Наведение естесственным образом влияет на последний элемент массива, потому что последний становится текущим.
Чтобы реакция была на любой элемент массива, нужно тут же сетить текущую величину (какую - в моём примере определяет ДетектМаусКолижн) какой-либо величине, которая будет отвечать за номер выделенного объекта.


Название: Re: GUI и for loop
Отправлено: Corpic от 15 Февраля 2011, 21:24:44
Я эту проблему решил у себя в проекте через ОО. Только стоит помнить, что большое количество баттонов (или других элементов встроенного ГУИ) слишком тормозят. Лучше самостоятельно прописать в ОО координаты предполагаемых кнопок, их рисунки и т.д. В моем случае "массив" из 25 кнопок стал работать в 80 раз быстрее (судя по миллисекундам на фрейм).


Название: Re: GUI и for loop
Отправлено: AngelPOPs от 16 Февраля 2011, 02:55:57
To Den:
Во. Решил проблемку именно так. Взял координаты курсора и сравнил с координатами кнопочек и получил куррент интегрэйшон.
От туда и полпясал.

To Corpic: ОО я еще не осилил. Я от простого к сложному :)