JPG PNG BMP GIF 3 MB
Customization

Controls

Jenis Kontrol IMGUI

JPG PNG BMP GIF 3 MB Bagian ini daftar semua tampilan yang tersedia dan kontrol interaktif. Ada fungsi IMGUI lain yang mempengaruhi tata letak Kontrol, yang dijelaskan di bagian Controls Panduan.Layout section of the Guide.

Label

Label adalah non-interaktif. Ini hanya untuk tampilan. Tidak dapat diklik atau dipindahkan. Terbaik untuk menampilkan informasi saja.

/* GUI.Label example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour 
{
                    
    void OnGUI () 
    {
        GUI.Label (new Rect (25, 25, 100, 30), "Label");
    }

}


The Label created by the example code
Label yang dibuat oleh kode contoh

Button

Button adalah tombol interaktif yang khas. Ini akan merespon satu kali ketika diklik, tidak peduli berapa lama mouse tetap tertekan. Respon terjadi segera setelah tombol mouse dirilis.

Penggunaan Dasar

Dalam UnityGUI, Tombol akan kembali true ketika mereka diklik. Untuk mengeksekusi beberapa kode ketika Tombol diklik, Anda membungkus GUI. Fungsi tombol dalam pernyataan if. Dalam pernyataan if adalah kode yang akan dieksekusi ketika Tombol diklik.

/* GUI.Button example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour 
{
                    
    void OnGUI () 
    {
        if (GUI.Button (new Rect (25, 25, 100, 30), "Button")) 
        {
            // This code is executed when the Button is clicked
        }
    }

}


The Button created by the example code
Tombol yang dibuat oleh kode contoh

RepeatButton

RepeatButton adalah variasi Button biasa. Perbedaannya adalah, RepeatButton akan merespon setiap bingkai bahwa tombol mouse tetap tertekan. Ini memungkinkan Anda untuk membuat fungsi klik-dan-hold.

Penggunaan Dasar

Dalam UnityGUI, RepeatButtons akan kembali true untuk setiap bingkai yang diklik. Untuk mengeksekusi beberapa kode saat Tombol diklik, Anda membungkus GUI. Fungsi RepeatButton dalam pernyataan if. Dalam pernyataan if adalah kode yang akan dieksekusi sementara RepeatButton tetap diklik.

/* GUI.RepeatButton example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour 
{
                    
    void OnGUI () 
    {
        if (GUI.RepeatButton (new Rect (25, 25, 100, 30), "RepeatButton")) 
        {
            // This code is executed every frame that the RepeatButton remains clicked
        }
    }

}


The Repeat Button created by the example code
Tombol Ulang yang dibuat oleh kode contoh

TextField

Kontrol TextField adalah bidang garis tunggal interaktif yang dapat diedit yang mengandung string teks.

Penggunaan Dasar

TeksField akan selalu menampilkan string. Anda harus memberikan string yang akan ditampilkan dalam TextField. Ketika mengedit dibuat pada string, fungsi TextField akan mengembalikan string yang diedit.

/* GUI.TextField example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour 
{
                    
    private string textFieldString = "text field";
    
    void OnGUI () 
    {
        textFieldString = GUI.TextField (new Rect (25, 25, 100, 30), textFieldString);
    }

}


The TextField created by the example code
TeksField dibuat oleh kode contoh

TextArea

Kontrol TextArea adalah area multi-line interaktif yang dapat diedit yang mengandung string teks.

Penggunaan Dasar

TeksArea akan selalu menampilkan string. Anda harus memberikan string yang akan ditampilkan dalam TextArea. Ketika mengedit dibuat pada string, fungsi TextArea akan mengembalikan string yang diedit.

/* GUI.TextArea example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour
{
                    
    private string textAreaString = "text area";
    
    void OnGUI ()
    {
        textAreaString = GUI.TextArea (new Rect (25, 25, 100, 30), textAreaString);
    }

}


The TextArea created by the example code
TeksArea dibuat oleh kode contoh

Toggle

Kontrol ToggleSebuah kotak centang yang memungkinkan pengguna untuk mengganti opsi atau menonaktifkan. More info
Lihat di Glossary
menciptakan kotak centang dengan keadaan tetap / off. Pengguna dapat mengubah keadaan dengan mengkliknya.

Penggunaan Dasar

Negara Toggle on/off diwakili oleh boolean yang benar/false. Anda harus menyediakan boolean sebagai parameter untuk membuat Toggle mewakili keadaan aktual. Fungsi Toggle akan mengembalikan nilai boolean baru jika diklik. Untuk menangkap berinteraksiivitas ini, Anda harus menetapkan boolean untuk menerima nilai pengembalian fungsi Toggle.

/* GUI.Toggle example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour 
{
    private bool toggleBool = true;
    
    void OnGUI () 
    {
        toggleBool = GUI.Toggle (new Rect (25, 25, 100, 30), toggleBool, "Toggle");
    }
}


The Toggle created by the example code
Toggle dibuat oleh kode contoh

Toolbar

Kontrol ToolbarSe baris tombol dan kontrol dasar di bagian atas Editor Unity yang memungkinkan Anda untuk berinteraksi dengan Editor dengan berbagai cara (misalnya scaling, terjemahan). More info
Lihat di Glossary
pada dasarnya adalah baris Buttons. Hanya salah satu Tombol di Toolbar dapat aktif pada waktu, dan akan tetap aktif sampai tombol yang berbeda diklik. Perilaku ini meniru perilaku toolbar khas. Anda dapat menentukan sejumlah tombol arbitrase di Toolbar.

Penggunaan Dasar

Tombol aktif di Toolbar dilacak melalui integer. Anda harus menyediakan bilangan bulat sebagai argumen dalam fungsi. Untuk membuat Toolbar interaktif, Anda harus menetapkan bilangan bulat ke nilai pengembalian fungsi. Jumlah elemen dalam array konten yang Anda berikan akan menentukan jumlah Tombol yang ditunjukkan di Toolbar.

/* GUI.Toolbar example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour 
{
                    
    private int toolbarInt = 0;
    private string[] toolbarStrings = {"Toolbar1", "Toolbar2", "Toolbar3"};
    
    void OnGUI () 
    {
        toolbarInt = GUI.Toolbar (new Rect (25, 25, 250, 30), toolbarInt, toolbarStrings);
    }

}


The Toolbar created by the example code
Toolbar dibuat oleh kode contoh

SelectionGrid

Kontrol SelectionGrid adalah Toolbar multi-row. Anda dapat menentukan jumlah kolom dan baris di grid. Hanya satu tombol dapat aktif pada waktu.

Penggunaan Dasar

Tombol aktif dalam SeleksiGrid dilacak melalui bilangan bulat. Anda harus menyediakan bilangan bulat sebagai argumen dalam fungsi. Untuk membuat SeleksiGrid interaktif, Anda harus menetapkan bilangan bulat ke nilai pengembalian fungsi. Jumlah elemen dalam array konten yang Anda berikan akan menentukan jumlah Tombol yang ditunjukkan dalam SeleksiGrid. Anda juga dapat menentukan jumlah kolom melalui argumen fungsi.

/* GUI.SelectionGrid example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour 
{
                    
    private int selectionGridInt = 0;
    private string[] selectionStrings = {"Grid 1", "Grid 2", "Grid 3", "Grid 4"};
    
    void OnGUI () 
    {
        selectionGridInt = GUI.SelectionGrid (new Rect (25, 25, 300, 60), selectionGridInt, selectionStrings, 2);
    
    }

}


The SelectionGrid created by the example code
SeleksiGrid dibuat oleh kode contoh

Login Login

Kontrol HorizontalSlider adalah tombol geser horisontal khas yang dapat diseret untuk mengubah nilai antara nilai min dan maks yang telah ditentukan.

Penggunaan Dasar

Posisi tombol Slider disimpan sebagai pelampung. Untuk menampilkan posisi tombol, Anda menyediakan yang mengapung sebagai salah satu argumen dalam fungsi. Ada dua nilai tambahan yang menentukan nilai minimum dan maksimum. Jika Anda ingin tombol slider dapat disesuaikan, menetapkan nilai slider mengapung menjadi nilai pengembalian fungsi Slider.

/* Horizontal Slider example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour 
{
                    
    private float hSliderValue = 0.0f;
    
    void OnGUI () 
    {
        hSliderValue = GUI.HorizontalSlider (new Rect (25, 25, 100, 30), hSliderValue, 0.0f, 10.0f);
    }

}


The Horizontal Slider created by the example code
Slider Horizontal yang dibuat oleh kode contoh

VerticalSlider

Kontrol VerticalSlider adalah tombol geser vertikal khas yang dapat diseret untuk mengubah nilai antara nilai min dan maks yang telah ditentukan.

Penggunaan Dasar

Posisi tombol Slider disimpan sebagai pelampung. Untuk menampilkan posisi tombol, Anda menyediakan yang mengapung sebagai salah satu argumen dalam fungsi. Ada dua nilai tambahan yang menentukan nilai minimum dan maksimum. Jika Anda ingin tombol slider dapat disesuaikan, menetapkan nilai slider mengapung menjadi nilai pengembalian fungsi Slider.

/* Vertical Slider example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour 
{
                    
    private float vSliderValue = 0.0f;
    
    void OnGUI () 
    {
        vSliderValue = GUI.VerticalSlider (new Rect (25, 25, 100, 30), vSliderValue, 10.0f, 0.0f);
    }

}


The Vertical Slider created by the example code
Slider Vertikal yang dibuat oleh kode contoh

HorizontalScrollbar

Kontrol HorizontalScrollbar mirip dengan Kontrol Slider, tetapi mirip secara visual untuk menggulir elemen untuk peramban web atau prosesor kata. Kontrol ini digunakan untuk menavigasi Kontrol ScrollView.

Penggunaan Dasar

Login Gulirbar diterapkan identik dengan Slider Horizontal dengan satu pengecualian: Ada argumen tambahan yang mengontrol lebar tombol Scrollbar itu sendiri.

/* Horizontal Scrollbar example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour 
{
    private float hScrollbarValue;
    
    void OnGUI () 
    {
        hScrollbarValue = GUI.HorizontalScrollbar (new Rect (25, 25, 100, 30), hScrollbarValue, 1.0f, 0.0f, 10.0f);
    }

}


The Horizontal Scrollbar created by the example code
Horizontal Scrollbar dibuat oleh kode contoh

VerticalScrollbar

Kontrol VerticalScrollbar mirip dengan Kontrol Slider, tetapi mirip secara visual untuk menggulir elemen untuk peramban web atau prosesor kata. Kontrol ini digunakan untuk menavigasi Kontrol ScrollView.

Penggunaan Dasar

Gulir vertikal diimplementasikan identik dengan Slider Vertikal dengan satu pengecualian: Ada argumen tambahan yang mengontrol ketinggian tombol Scrollbar itu sendiri.

/* Vertical Scrollbar example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour
{
                    
    private float vScrollbarValue;
    
    void OnGUI ()
    {
        vScrollbarValue = GUI. VerticalScrollbar (new Rect (25, 25, 100, 30), vScrollbarValue, 1.0f, 10.0f, 0.0f);
    }
}


The Vertical Scrollbar created by the example code
The Vertical Scrollbar dibuat oleh kode contoh

Login Login

ScrollViews adalah Kontrol yang menampilkan area yang terlihat dari set kontrol yang jauh lebih besar.

Penggunaan Dasar

Login Pandangan memerlukan dua Rects sebagai argumen. Rect pertama mendefinisikan lokasi dan ukuran area ScrollView yang dapat dilihat di layar. Rect kedua mendefinisikan ukuran ruang yang terkandung di dalam area yang terlihat. Jika ruang di dalam area yang terlihat lebih besar dari area yang terlihat, Scrollbar akan muncul sesuai. Anda juga harus menetapkan dan memberikan 2D Vector yang menyimpan posisi area yang dapat dilihat.

/* ScrollView example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour 
{
                    
    private Vector2 scrollViewVector = Vector2.zero;
    private string innerText = "I am inside the ScrollView";
    
    void OnGUI () 
    {
        // Begin the ScrollView
        scrollViewVector = GUI.BeginScrollView (new Rect (25, 25, 100, 100), scrollViewVector, new Rect (0, 0, 400, 400));
    
        // Put something inside the ScrollView
        innerText = GUI.TextArea (new Rect (0, 0, 400, 400), innerText);
    
        // End the ScrollView
        GUI.EndScrollView();
    }

}


The ScrollView created by the example code
Login Lihat dibuat oleh kode contoh

Window

Windows adalah wadah kontrol yang dapat diseret. Mereka dapat menerima dan kehilangan fokus saat diklik. Karena ini, mereka diterapkan sedikit berbeda dari Kontrol lain. Setiap jendela memiliki nomor id, dan kontennya dinyatakan dalam fungsi terpisah yang disebut ketika jendela memiliki fokus.

Penggunaan Dasar

Windows adalah satu-satunya kontrol yang memerlukan fungsi tambahan untuk bekerja dengan benar. Anda harus menyediakan nomor id dan nama fungsi untuk dieksekusi untuk jendela. Di dalam fungsi jendela, Anda membuat perilaku aktual atau kontrol yang terkandung.

/* Window example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour 
{
                    
    private Rect windowRect = new Rect (20, 20, 120, 50);
    
    void OnGUI ()
    {
        windowRect = GUI.Window (0, windowRect, WindowFunction, "My Window");
    }
    
    void WindowFunction (int windowID) 
    {
        // Draw any Controls inside the window here
    }

}


The Window created by the example code
Jendela yang dibuat oleh kode contoh

GUI.changed

Untuk mendeteksi apakah pengguna melakukan tindakan di GUI (klik tombol, seret slider, dll), membaca nilai GUI.changed dari skrip Anda. Ini akan ditetapkan untuk benar ketika pengguna telah melakukan sesuatu, membuatnya mudah untuk memvalidasi input pengguna.

Sebuah skenario umum adalah untuk Toolbar, di mana Anda ingin mengubah nilai spesifik berdasarkan tombol di Toolbar diklik. Anda tidak ingin menetapkan nilai dalam setiap panggilan ke OnGUI(), hanya ketika salah satu tombol telah diklik.

/* GUI.changed example */

using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour
{
                    
    private int selectedToolbar = 0;
    private string[] toolbarStrings = {"One", "Two"};
    
    void OnGUI () 
    {
        // Determine which button is active, whether it was clicked this frame or not
        selectedToolbar = GUI.Toolbar (new Rect (50, 10, Screen.width - 100, 30), selectedToolbar, toolbarStrings);
    
        // If the user clicked a new Toolbar button this frame, we'll process their input
        if (GUI.changed)
        {
            Debug.Log("The toolbar was clicked");
    
            if (0 == selectedToolbar)
            {
                Debug.Log("First button was clicked");
            }
            else
            {
                Debug.Log("Second button was clicked");
            }
        }
    }

}


GUI.changed akan kembali benar jika kontrol GUI ditempatkan sebelum dimanipulasi oleh pengguna.

JPG PNG BMP GIF 3 MB
Customization