Объявление
public static void BeginChangeCheck();Описание
Запускает новый блок кода для проверки изменений графического интерфейса.
Используйте это в сочетании с EditorGUI.EndChangeCheck, чтобы создать блок кода, который проверяет, изменилось ли состояние графического интерфейса только для элементов управления, содержащихся в этом блоке. Этот метод отличается от метода GUI.changed, который возвращает значение true для любых изменений состояния графического интерфейса. BeginChangeCheck() ограничивает проверку определенным набором элементов управления.
using UnityEditor;
public class ExampleWindow : EditorWindow
{
float sliderValue = 0;
string labelText = "-";
[MenuItem("Window/Example Window")]
static void Init()
{
var example = (ExampleWindow)EditorWindow.GetWindow(typeof(ExampleWindow));
example.Show();
}
void OnGUI()
{
EditorGUILayout.LabelField("New value", labelText);
// Запустить блок кода для проверки изменений GUI
EditorGUI.BeginChangeCheck();
sliderValue = EditorGUILayout.Slider(sliderValue, 0, 1);
// Завершить блок кода и обновить метку, если произошло изменение
if (EditorGUI.EndChangeCheck())
{
labelText = sliderValue.ToString();
}
}
}