1
私はカスタムEditorWindowを作っています。そして、現在のマウスの位置にある要素を特定したいと思います。特定のGUILayout/EditorGUILayout要素でマウスを検出するにはどうすればよいですか?
GUI
またはEditorGUI
を使用すると簡単です。 GUI/EditorGUI
Rect
位置を使用して、必要な位置に要素を配置します。そして、私のコードは次のようになります
Rect button = new Rect(10, 10, 50, 50);
List<Rect> elements = new List<Rect>();
void OnEnable() {
// loop to initialize elements and add them to the list
}
void OnGUI() {
foreach (Rect element in elements) {
if (element.Contains(Event.current.mousePosition)) {
// get element information
}
}
}
しかしGUILayout
/EditorGUILayout
場所の要素が自動的に、彼らはないRect
座標を持っています。
この場合、どのように要素を決定すればよいですか?
ええ、私はこの方法を見ましたが、私はイベントタイプは、単に再描画ではないのMouseDownまたはMouseUpイベントまたはMouseDragなどであれば何をするか理解していません。そのテストコードのコードは機能しません –
便利なサンプルが追加されました –