我正嘗試在Mono和X11中實現全局熱鍵。不幸的是,應用程序使用System.Windows.Forms
,所以我不能使用this question中提出的GDK#事件過濾器。Mono中的全局熱鍵
使用XGrabKey
的作品,但我遇到了事件循環的問題。關閉應用程序時,處理X11事件循環的線程仍掛在XNextEvent
中。有沒有辦法解決這個問題?我寧願不訴諸XPending
投票。我可以以某種方式取消XNextEvent
或發送虛擬事件嗎?
我在根窗口打電話給XGrabKey
,所以很遺憾我沒有得到像DestroyNotify
或UnmapNotify
這樣的事件。
爲什麼你的程序沒有平臺特定部分?那麼你可以使用GDK/GTK。 Anyhoo .. – IanNorton
嗯,這是平臺特定部分的一部分,因爲顯然使用'XGrabKey'在Windows上不起作用。但是從SWF遷移到Gtk#不是一種選擇,爲此只需引入整個Gtk#似乎是過度殺傷性的。 – bseibold
我知道這是非常舊的帖子,但我處於相同的情況,似乎你設法讓它工作,你有任何地方這個代碼可用?或者可以將它作爲解決方案發布? – Gusman