標籤 | 滑塊前面的可選標籤。 |
最小值 | 傳遞至滑塊顯示的範圍的下限值,透過參照傳遞。 |
最大值 | 傳遞至滑塊顯示的範圍的上限值,透過參照傳遞。 |
最小限制 | 滑塊左端的限制。 |
最大限制 | 滑塊右端的限制。 |
選項 | 指定額外版面配置屬性的選用版面配置清單。在此傳遞的任何值都將覆寫 樣式 定義的設定。其他資源:GUILayout.Width、GUILayout.Height、GUILayout.MinWidth、GUILayout.MaxWidth、GUILayout.MinHeight、GUILayout.MaxHeight、GUILayout.ExpandWidth、GUILayout.ExpandHeight。 |
製作一種特別滑塊,讓使用者能夠在最小值和最大值之間指定一個範圍。
在區間之間隨機移動所選物件。
// Place the selected object randomly between the interval of the Min Max Slider // in the X,Y,Z coords
using UnityEditor; using UnityEngine;
public class ExampleClass : EditorWindow { float minVal = -10; float minLimit = -20; float maxVal = 10; float maxLimit = 20;
[MenuItem("Examples/Place Object Randomly")] static void Init() { ExampleClass window = (ExampleClass)GetWindow(typeof(ExampleClass)); window.Show(); }
void OnGUI() { EditorGUILayout.LabelField("Min Val:", minVal.ToString()); EditorGUILayout.LabelField("Max Val:", maxVal.ToString()); EditorGUILayout.MinMaxSlider(ref minVal, ref maxVal, minLimit, maxLimit); if (GUILayout.Button("Move!")) PlaceRandomly(); }
void PlaceRandomly() { if (Selection.activeTransform) Selection.activeTransform.position = new Vector3(Random.Range(minVal, maxVal), Random.Range(minVal, maxVal), Random.Range(minVal, maxVal)); else Debug.LogError("Select a GameObject to randomize its position."); } }