В моем приложении я хочу, чтобы прокрутка выполнялась только с помощью колеса прокрутки с помощью мыши, а не с помощью жеста двумя пальцами на трекпаде. По сути, я пытаюсь определить, генерируется ли scrollWheelEvent с помощью мыши или трекпада, внутри - (void) scrollWheel: (NSEvent *) методEvent. Из того, что я знаю до сих пор, кажется, что нет простого способа добиться этого.
Я попробовал обойтись, установив для логической переменной значение true и false внутри - (void) beginGestureWithEvent: (NSEvent *) event; и - (void) endGestureWithEvent: (NSEvent *) событие; Но это не решение, потому что метод scrollWheel: вызывается несколько раз после вызова метода endGestureWithEvent :.
Вот мой код:
$BOOL fromTrackPad = NO;
-(void)beginGestureWithEvent:(NSEvent *)event;
{
fromTrackPad = YES;
}
-(void) endGestureWithEvent:(NSEvent *)event;
{
fromTrackPad = NO;
}
- (void)scrollWheel:(NSEvent *)theEvent
{
if(!fromTrackPad)
{
//then do scrolling
}
else
{
//then don't scroll
}
}
Я знаю, что это нестандартно, но это мое требование. Кто-нибудь знает, как это сделать ?? Спасибо!