言語: 日本語
  • C#
  • JS
  • Boo

スクリプト言語

お好みのスクリプト言語を選択すると、サンプルコードがその言語で表示されます。

EditorWindow.BeginWindows

public function BeginWindows(): void;

Description

全てのポップアップウィンドウを表示するための開始領域をマークします

GUI.Windowはエディタ上ではゲーム内と動作が少し異なります。ゲーム内では画面上にウィンドウをポップアップしますが、エディタでは、 GUI.Windowはエディタウィンドウのサブウィンドウとして表示されます。Begin/EndWindowsは表示する場所を決定するのに使用します。 GUI.Window または GUILayout.Window は、BeginWindows / EndWindows で囲まれた中で記述する必要があります。例えば:
ウィンドウと中にボタンを備えたシンプルなエディタウィンドウ

	class GUIWindowDemo extends EditorWindow {
		// The position of the window
		var windowRect = Rect (100,100,200,200);

		// Main GUI Function
		function OnGUI () {
			// Begin Window
			BeginWindows ();
			
			// All GUI.Window or GUILayout.Window must come inside here
			windowRect = GUILayout.Window (1, windowRect, DoWindow, "Hi There");		
			
			// Collect all the windows between the two.
			EndWindows ();			
		}
		
		// The window function. This works just like ingame GUI.Window
		function DoWindow () {
			GUILayout.Button ("Hi");
			GUI.DragWindow ();		
		}
		
		// Add menu item to show this demo.
		@MenuItem ("Test/GUIWindow Demo")
		static function Init () {
			EditorWindow.GetWindow (GUIWindowDemo);
		}
	}

ポップアップウィンドウが表示される場所は BeginWindows / EndWindows の組み合わせによって決定します。全てのウィンドウのクリッピング空間は GUI.BeginGroup または GUI.BeginScrollView によって決定します。
スクロールバーを使用したウィンドウと中にボタンを備えたシンプルなエディタウィンドウ

	class GUIWindowDemo2 extends EditorWindow {
		// The position of the window
		var windowRect = Rect (100,100,200,200);

		// Scroll position
		var scrollPos = Vector2.zero;

		function OnGUI () {
			// Set up a scroll view
			scrollPos = GUI.BeginScrollView (
				new Rect (0, 0, position.width, position.height), 
				scrollPos, 
				new Rect (0, 0, 1000, 1000)
			);

			// Same code as before - make a window. Only now, it's INSIDE the scrollview
			BeginWindows ();	
			windowRect = GUILayout.Window (1, windowRect, DoWindow, "Hi There");				
			EndWindows ();
			
			// Close the scroll view
			GUI.EndScrollView ();
		}
		
		function DoWindow () {
			GUILayout.Button ("Hi");
			GUI.DragWindow ();		
		}

		@MenuItem ("Test/GUIWindow Demo 2")
		static function Init () {
			EditorWindow.GetWindow (GUIWindowDemo2);
		}
	}