CodeBlanks Logo Icon CodeBlanks

EditorWindow

EditorWindow ile özel pencere oluşturmayı öğrenirsin.

EditorWindow ile Bağımsız Pencereler

Inspector veya Hierarchy gibi Unity arayüzüne kenetlenebilen (dockable) bağımsız pencereler oluşturmak için EditorWindow sınıfından kalıtım alınır. Pencereyi açıp ekranda göstermek için EditorWindow.GetWindow() metodu kullanılır.

public class HaritaAraci : EditorWindow
{
    // GetWindow ile pencere açılır
}

OnGUI ile Pencere Arayüzü Çizimi

Bir EditorWindow penceresinin içeriği her karede OnGUI() metodu içinde çizilir. Butonlar, kaydırıcılar ve metin alanları oluşturmak için GUILayout veya EditorGUILayout yardımcı sınıfları kullanılır.

void OnGUI()
{
    GUILayout.Label("Harita Ayarları");
}

Uygulama Editör Penceresini Göster

win.Show(); metodunu çağırarak pencereyi ekranda aç.

Başlangıç kodu

Player.cs
using System;

public class EditorWindow
{
    public string title = "Harita";
    public void Show() => Console.WriteLine("Pencere: " + title);
}

public class Program
{
    public static void Main()
    {
        EditorWindow win = new EditorWindow();
        // Pencereyi ekranda goster
    }
}

Örnek çözüm

Player.cs
using System;

public class EditorWindow
{
    public string title = "Harita";
    public void Show() => Console.WriteLine("Pencere: " + title);
}

public class Program
{
    public static void Main()
    {
        EditorWindow win = new EditorWindow();
        win.Show();
    }
}

Beklenen çıktı

Pencere: Harita

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Unity editöründe sürüklenebilen ve panellere kenetlenebilen özel bir pencere tasarlamak için hangi temel sınıftan miras alınır?

  • MonoBehaviour
  • ScriptableObject
  • Component
  • EditorWindow Doğru cevap

Açıklama: Bağımsız ve kenetlenebilir editör pencereleri için EditorWindow sınıfından türetme yapılır.

2 EditorWindow'dan Kalıtım Al

Soru
public class BolumAraci : ____ {}
Cevap
public class BolumAraci : EditorWindow {}

Açıklama: Özel bir editör penceresi oluşturmak için EditorWindow sınıfından miras alınır.

3 Pencere Mimarisi Terimleri

Kavram Anlamı
EditorWindow Kenetlenebilir özel pencere sınıfı
GetWindow Pencereyi açan veya öne getiren metot
OnGUI Arayüz elemanlarının çizildiği metot
EditorGUILayout Otomatik yerleşimli arayüz çizen sınıf

Uzman bölümündeki tüm dersler