2

我有一个简单的问题。我想统一打开一个编辑器窗口,并让它的左上角位于光标的位置。我试过设置EditorWindow.positionEvent.current.mousePosition但这没有产生任何结果。

它似乎Event.current.mousePosition起源于它最后进入的任何窗口(检查器等)的左上角。

有什么帮助吗?

4

1 回答 1

3

您可以像这样处理它(经过测试,有效):

public class MyWindow : EditorWindow
{
  bool initializedPosition = false;

  ...

  void OnGUI()
  {
    if (!initializedPosition)
    {
        Vector2 mousePos = GUIUtility.GUIToScreenPoint(Event.current.mousePosition);
        position = new Rect(mousePos.x, mousePos.y, position.width, position.height);
        initializedPosition = true;
    }

    ...
}
于 2019-06-09T09:24:52.637 回答