差分
細
これらのイベントを発動するにはNSViewのAddTrackingAreaメソッドで事前に「どの範囲で取るか」という指定をする必要がある。これらのイベントが発動するようにするにはNSViewのUpdateTrackingAreasメソッドをオーバーライドして、AddTrackingAreaメソッドで事前に「どの範囲で取るか」を明示的に指定をする。
var trackingArea if (_trackingArea != null) { this.RemoveTrackingArea(_trackingArea); } _trackingArea = new NSTrackingArea( rect: this.Bounds,
owner: this, userInfo: null); this.AddTrackingArea(trackingArea_trackingArea); base.UpdateTrackingAreas();
Administrator がページ「Xamarin.Mac/マウスの移動を検出する」を「Xamarin.MacのNSViewでMouseMovedイベントなどを発生させる」に移動しました
</source>
<source lang="csharp">
NSTrackingArea _trackingArea; public override void InitializeUpdateTrackingAreas()
{
options: NSTrackingAreaOptions.ActiveAlways |
NSTrackingAreaOptions.InVisibleRect |
NSTrackingAreaOptions.MouseEnteredAndExited |
NSTrackingAreaOptions.MouseMoved,
}
</source>