В Mac OS X трекпад поддерживает несколько жестов, один из двух пальцев позволяет прокручивать вверх, вниз, влево или вправо на странице. wxPython имеет панель, которая поможет создавать прокрученные виджеты wx.lib.scrolledpanel. Однако у него нет поддержки жестов, которые являются настоящей болью.Принимая жесты прокрутки мыши в wxPython на Mac OS X
Я попытался изменить NSView, как это было сделано, если это было обычное приложение Objective C, однако NSEvents использует методы (touchhesBeganWithEvent: и т. Д.), Которые подклассифицированы для использования в качестве уведомления и обработки события , Это не похоже на вызовы Bind в wxPython. Это было бы хорошо, однако если Objective C разрешено обезьяний заплаток ... например
def handleTouchBegin(event):
print "Hey a touch event has begun!"
view.touchBeganWithEvent_ = handleTouchBegin
, но как вы можете догадаться ошибками PyObj C (так как Objective C не поддерживает обезьяну заплаток или нет в любой чистой и красивой моде) и Я получаю следующую ошибку
TypeError: cannot change a method
хорошо хорошо я мог делать то, что яблоко говорит и подкласс, но объект уже создан, так как я все еще могу захватить события. Конечно, есть также
NSEvent addGlobalMonitorForEventsMatchingMask:
and
NSEvent addLocalMonitorForEventsMatchingMask:
но те же разочаровать в том, что они либо не поступят с приложением (глобальные сделок со всеми остальными) или не имеет дела с событиями одной NSView (или делает это и я дезинформирован).
Итак, как мне это сделать? Я пропустил еще один вариант, я знаю, что кое-что прочитал о NSResponder, но из того, что я собрал, это NSView, ответчик событий и вы не добавляете его в NSView.
Есть ли наблюдатели, как в QTKit, такие как для контроля изменения состояния нагрузки (https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/QTKitApplicationProgrammingGuide/AnatomyoftheQTKFramework/AnatomyoftheQTKFramework.html#//apple_ref/doc/uid/TP40008156-CH109-SW11)?
Вы существующий вид, созданный кем-то другим, и вы хотите изменить его обработки событий? –
Да. Ну, я хочу захватить сенсорные события на дорожке. – Zimm3r