Превращение GUI.Button в GUI.Box после нажатия на нее

Графический интерфейс пользователя

Превращение GUI.Button в GUI.Box после нажатия на нее

Сообщение Maus 23 май 2015, 12:23

Дела такое - нужно что бы после нажатия на GUI.Button она превратилась в GUI.Box.

Как это реализовать? Я так понимаю должно быть нечто в роде этого:

if (GUI.Button (new Rect (100, 100, 200, 200), "")){
GUI.Button = GUI.Box
}

Но такой метод, конечно, не работает - может у вас есть идеи?

P.S - через bool я уже реализовал - если bool1 = true то рисуется Button, если на нее нажать - она сама себя отключает (bool1 = false) и включает bool 2 - он рисует GUI.Box. Но такая конструкция получается огромной, особенно если кнопок 10 или больше (20 bool 8() ). Может есть какой-то способ напрямую изменить Button в Box?
Maus
UNец
 
Сообщения: 21
Зарегистрирован: 24 апр 2015, 17:54

Re: Превращение GUI.Button в GUI.Box после нажатия на нее

Сообщение waruiyume 23 май 2015, 14:01

Синтаксис:
Используется csharp
using UnityEngine;
using UnityEngine.Events;

public class NewBehaviourScript : MonoBehaviour
{
    public ButonOnce[] buttons;

    internal void OnGUI()
    {
        foreach (var b in buttons)
            b.Update();
    }

    public void Foo()
    {
        Debug.Log("Baz");
    }
}

[System.Serializable]
public class ButonOnce
{
    public GUIContent content;
    public UnityEvent  action;
    public Rect coordinats;
    private bool interactibleP = true;

    public void Update()
    {
        if (interactibleP)
        {
            if (GUI.Button(coordinats, content))
            {
                action.Invoke();
                interactibleP = false;
            }
        }
        else
            GUI.Box(coordinats, content);
    }
}
 

А теперь то же самое, но через uGUI
Скрытый текст:
Button.jpg
У вас нет доступа для просмотра вложений в этом сообщении.
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону


Вернуться в uGUI

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


cron