我有一个简单的问题。我想统一打开一个编辑器窗口,并让它的左上角位于光标的位置。我试过设置EditorWindow.position
,Event.current.mousePosition
但这没有产生任何结果。
它似乎Event.current.mousePosition
起源于它最后进入的任何窗口(检查器等)的左上角。
有什么帮助吗?
我有一个简单的问题。我想统一打开一个编辑器窗口,并让它的左上角位于光标的位置。我试过设置EditorWindow.position
,Event.current.mousePosition
但这没有产生任何结果。
它似乎Event.current.mousePosition
起源于它最后进入的任何窗口(检查器等)的左上角。
有什么帮助吗?
您可以像这样处理它(经过测试,有效):
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;
}
...
}