Страница 1 из 1

GUI. Выбор кнопки. Button.Select()

СообщениеДобавлено: 12 июл 2017, 12:42
RyT
Здравствуйте. Такой вопрос:
Есть кнопки меню. По дефолту, в EventSystem, выбрана одна из кнопок (как First Selected), и она же подсвечивается. При наведении курсора на другую кнопку, она тоже начинает подсвечиваться, но подсветка с первой кнопки не пропадает, так как она выбрана Button.Select().
И проблема в том, что пока не нажмешь на кнопку, она не будет выбрана, и будут постоянно подсвечиваться 2 разные кнопки (одна - которая выбранная Button.Select(), а другая - на которую наводишь курсор)...
И вот я хотел просить: Можно ли как-то через скрипт реализовать выбор кнопки при наведении на нее курсора, а не по щелчку ЛКМ?
Я пробовал сделать это с помощью методов OnMouseEnter() или Button.Select(), но не получилось. Если кто-то знает, как это можно сделать, напишите, пожалуйста.
Заранее спасибо)

P.S.
Прикрепил бы изображения, но не смог загрузить их с пк... Часть интерфейса сайта как-то обрезана(

Re: GUI. Выбор кнопки. Button.Select()

СообщениеДобавлено: 12 июл 2017, 19:59
samana
Вы точно говорите о GUI, а не о UI ?
Если всё таки о UI, то можете попробовать при over по кнопке, выполнять https://docs.unity3d.com/ScriptReferenc ... bject.html (второй параметр можно установить в null).

Re: GUI. Выбор кнопки. Button.Select()

СообщениеДобавлено: 13 июл 2017, 01:14
RyT
samana писал(а):Вы точно говорите о GUI, а не о UI ?
Если всё таки о UI, то можете попробовать при over по кнопке, выполнять https://docs.unity3d.com/ScriptReferenc ... bject.html (второй параметр можно установить в null).


Если честно, я сам не до конца определился это GUI или UI... Вроде речь о графической составляющей, а вроде и о скрипте.
Я почитал про метод, который Вы показали, но не до конца понял, как мне его применить с курсором мыши? Не подскажите?

Re: GUI. Выбор кнопки. Button.Select()

СообщениеДобавлено: 13 июл 2017, 06:41
samana
В общем думаю речь о UI.
Если вам не нужна навигация TAB-ом, то можете в компоненте каждой кнопки установить Navigation => None. Тогда и скрипты писать не надо.

Re: GUI. Выбор кнопки. Button.Select()

СообщениеДобавлено: 13 июл 2017, 20:49
RyT
samana писал(а):В общем думаю речь о UI.
Если вам не нужна навигация TAB-ом, то можете в компоненте каждой кнопки установить Navigation => None. Тогда и скрипты писать не надо.


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

Re: GUI. Выбор кнопки. Button.Select()

СообщениеДобавлено: 16 июл 2017, 14:09
RyT
Я разобрался. Если у кого-то вдруг возникнет подобная проблема, то вот решение:
1.Добавьте компонент Event Trigger на кнопки меню.
2.Нажмите кнопку "Добавить" и выберите PointerEnter.
3.Теперь нажмите на кнопку'+', чтобы добавить новый пункт в перечень событий PointerEnter Тип(BaseEventData).
4.Выберите объект, содержащий скрипт. ( в моем случае это была эта же самая кнопка)
5.Теперь выберите функцию, которая будет вызываться из списка функций. (У меня: Button -> Select() )

После этого кнопка будет выбираться не по щелчку, а просто при наведении на нее курсора.

Re: GUI. Выбор кнопки. Button.Select()

СообщениеДобавлено: 16 июл 2017, 17:49
samana
RyT писал(а):Я разобрался. Если у кого-то вдруг возникнет подобная проблема, то вот решение:
1.Добавьте компонент Event Trigger на кнопки меню.
2.Нажмите кнопку "Добавить" и выберите PointerEnter.
3.Теперь нажмите на кнопку'+', чтобы добавить новый пункт в перечень событий PointerEnter Тип(BaseEventData).
4.Выберите объект, содержащий скрипт. ( в моем случае это была эта же самая кнопка)
5.Теперь выберите функцию, которая будет вызываться из списка функций. (У меня: Button -> Select() )

После этого кнопка будет выбираться не по щелчку, а просто при наведении на нее курсора.


Спасибо, будем знать!