libro
www.tuyano.com
C#ではじめるUnityプログラミング入門

Unity 4.6の新GUIをC#で利用する (2/5)

作成:2014-09-27 10:17
更新:2014-09-27 10:17

■スクリプトを用意する

では、スクリプトを用意しましょう。<Assets>メニューの<Create>から<C# Script>を選んでC#のソースコードファイルを作成しましょう。ここでは名前を「GuiObj」としておきます。

作成したら、MonoDevelopを起動し、下のリスト欄のようにリストを記述しておきます。まだ具体的な処理はありませんが、GUIを利用するために必要な変数と関数を用意しておきました。

●スクリプトを組み込む
作成したスクリプトをゲームオブジェクトに組み込みます。今回は、Canvasに追加しておくことにしましょう。シーンに配置したCanvasを選択し、<Component>メニューの<Scripts>内から<Gui Obj>を選びます。これで、GuiObjがコンポーネントとしてCanvasに組み込まれました。

●変数にGUI部品を設定する
続いてCanvasを選択し、インスペクターから「GuiObj」コンポーネントの設定を見てみましょう。スクリプトに用意した変数「Message Text」「field」という項目が表示されます。ここに、作成したmessageTextInputFieldをそれぞれ設定して下さい。これで、スクリプト内から、これらの変数を通じてGUIにアクセスできるようになります。

●UIパッケージについて
作成したスクリプトでは、まず「using UnityEngine.UI;」というusing文が追加されているのに気がつきます。このUnityEngine.UIというパッケージが、新GUI関係のクラスをまとめているところです。GUIをC#から操作するには、このパッケージをusingしておく必要があります。

●UIオブジェクトについて
今回作成したGuiObjクラスには、2つのフィールドが用意されていました。以下のものですね。
    public Text msgText;
    public InputField field;
これらの変数に、GUI部品のmsgTextInputFieldが設定されます。このように、GUIは「Text」「InputField」というように、GUIの名前そのままのクラスとしてC#に用意されています。これらのフィールドのインスタンスにアクセスすることで、GUIの属性や入力情報などを利用できるようになっているのです。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class GuiObj : MonoBehaviour {
    public Text msgText;
    public InputField field;

    void Start () {
    
    }
    
    void Update () {
    
    }

    public void Button1Click () {

    }
}

※関連コンテンツ

「C#ではじめるUnityプログラミング入門」に戻る