InputEventMouse
Общая база событий мыши: точки и маска кнопок.
Используйте конкретный InputEventMouseButton или InputEventMouseMotion. Базовый тип объединяет Position, GlobalPosition и ButtonMask. Это данные события, а не команда перемещения курсора.
При доставке в Control координата Position переводится в его локальное пространство. Например, без дополнительных преобразований у элемента с позицией (40, 30) щелчок в (50, 40) имеет локальную Position = (10, 10), а сохранённая GlobalPosition остаётся (50, 40). При работе с масштабом, canvas или SubViewport явно выбирайте нужное преобразование вместо подстановки GlobalPosition по имени.
ButtonMask — битовая комбинация удерживаемых кнопок; ButtonIndex в подклассе кнопки указывает одно событие. Эти перечисления не взаимозаменяемы.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Свойства3
ButtonMaskСвойство
public MouseButtonMask ButtonMask { get; set; }Битовая комбинация MouseButtonMask для одновременно удерживаемых кнопок. Пустая маска равна 0. Это отдельные данные от ButtonIndex конкретного события; присваивание одного поля автоматически не вычисляет другое.
GlobalPositionСвойство
public Vector2 GlobalPosition { get; set; }Сохранённая общая точка события. XformedBy у событий кнопки и движения мыши оставляет её без изменения, хотя Position преобразуется. Не трактуйте имя Global как мировую координату Entity2D или абсолютную точку рабочего стола: пространство зависит от пути доставки через Viewport и canvas.
PositionСвойство
public Vector2 Position { get; set; }Точка в пространстве получателя события. В _Input используется пространство Viewport; при доставке в Control.GuiInput — локальные координаты Control. XformedBy преобразует эту точку вместе с переносом. Это не смещение Relative и не гарантированные координаты ОС.
Методы6
GetButtonMaskMouseButtonMask
public MouseButtonMask GetButtonMask();Возвращает ButtonMask из события, без нового опроса устройства.
MouseButtonMaskТекущее значение ButtonMask в пространстве и единицах свойства.
GetGlobalPositionVector2
public Vector2 GetGlobalPosition();Возвращает GlobalPosition из события, без нового опроса устройства.
Vector2Текущее значение GlobalPosition в пространстве и единицах свойства.
GetPositionVector2
public Vector2 GetPosition();Возвращает Position из события, без нового опроса устройства.
Vector2Текущее значение Position в пространстве и единицах свойства.
SetButtonMaskvoid
public void SetButtonMask(MouseButtonMask buttonMask);Устанавливает ButtonMask по правилам свойства; не перемещает указатель ОС и не отправляет событие.
| Имя | Тип | По умолчанию |
|---|---|---|
buttonMask | MouseButtonMask | — |
buttonMaskНовое значение ButtonMask.
SetGlobalPositionvoid
public void SetGlobalPosition(Vector2 globalPosition);Устанавливает GlobalPosition по правилам свойства; не перемещает указатель ОС и не отправляет событие.
| Имя | Тип | По умолчанию |
|---|---|---|
globalPosition | Vector2 | — |
globalPositionНовое значение GlobalPosition.
SetPositionvoid
public void SetPosition(Vector2 position);Устанавливает Position по правилам свойства; не перемещает указатель ОС и не отправляет событие.
| Имя | Тип | По умолчанию |
|---|---|---|
position | Vector2 | — |
positionНовое значение Position.