1

ボタンがクリックされたときにボタンに値を出力したいのですが、どのように可能ですか?

[アップデート]

using UnityEngine; 
using System.Collections; 
public class tic : MonoBehaviour 
{ 
    void OnGUI() { 
        string value=""; 
        if(GUI.Button(new Rect(10,10,50,50),value)) { 
            value="y"; 
            print ("y"); 
            GUI.Button(new Rect(10,10,50,50),value); 
        } 
    } 
} 
4

2 に答える 2

1

Unity guiの例を適応させると、ボタンのテキストを変数に格納し、ボタンがクリックされたときに変更することで、次のようにボタンのテキストを変更できます。

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour {
    public string ButtonText = "Click Me"
    void OnGUI () {
        if (GUI.Button (new Rect (10,10,150,100), ButtonText )) {
            ButtonText = "Huzzah!";
        }
    }
}

ボタンは最初に「ClickMe」と表示され、次に「Huzzah」に一度変更されます。

ボタンの実際のテキストを変更したくない場合は、少し難しくなります。ボタンの上に配置するラベルを作成する必要があります。このルートを使用することはお勧めしません。見栄えが悪く、ボタン付きでラベルが移動しません。

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour {
    public bool DrawLabel = false;
    public string LabelText = "Huzzah"
    void OnGUI () {
        if (GUI.Button (new Rect (10,10,150,100), "Click Me")) {
            DrawLabel = true;
        }
        if(DrawLabel){
            // use the same rect parameters as you did to create the button
            GUI.Label (new Rect (10, 10, 150,100), LabelText);
        }
    }
}
于 2013-03-12T17:14:28.533 に答える