正常OSX應用程序在未聚焦時首先進行鼠標單擊以首先聚焦應用程序。然後將來的點擊由應用程序處理。 iTunes播放/暫停按鈕和Finder的行爲不同,即使未聚焦,第一次點擊也會起作用。我正在尋找一種方法來強制現有的應用程序(遠程桌面連接。應用程序)採取行動的第一次點擊,而不僅僅是專注。使OSX應用程序在未聚焦時響應第一次鼠標單擊
11
A
回答
4
14
檢查NSView的accepFirstMouse,它可能是你要找的。
acceptFirstMouse: 如果接收方應該發送一個mouseDown:消息,如果沒有,則由子類重寫以返回YES。
- (BOOL)acceptsFirstMouse:(NSEvent *)theEvent
參數 theEvent 初始鼠標按下事件,它必須是在在其窗口中的接收器。
討論 接收者可以無條件地返回一個值,也可以使用event的位置來確定是否需要該事件。默認實現忽略該事件並返回NO。
在子類中重寫此方法以允許實例響應點進。這允許用戶單擊非活動窗口中的視圖,只需單擊一下即可激活視圖,而不是先單擊以使窗口處於活動狀態,然後單擊該視圖。大多數視圖對象拒絕點擊嘗試,所以事件只是激活窗口。但是,許多控件對象(例如NSButton和NSSlider實例)都接受它們,因此用戶可以立即操作控件而不必釋放鼠標按鈕。
0
//假設您有1個視圖控制器總是處於懸停狀態。超過載入視圖。注:這不會在pre-yosemite工作。
- (void)loadView {
NSLog(@"loadView");
self.view = [[NSView alloc] initWithFrame:
[[app.window contentView] frame]];
[self.view setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable];
int opts = (NSTrackingMouseEnteredAndExited | NSTrackingActiveAlways);
trackingArea0 = [[NSTrackingArea alloc] initWithRect:self.view.bounds
options:opts
owner:self
userInfo:nil];
[self.view addTrackingArea:trackingArea0];
}
- (void)mouseEntered:(NSEvent *)theEvent {
NSLog(@"entered");
if ([[NSApplication sharedApplication] respondsToSelector:@selector(activateIgnoringOtherApps:)]) {
[[NSApplication sharedApplication] activateIgnoringOtherApps:YES];
}
}
+0
這是一個非常坦率的無望解決方案。 – 2015-04-14 01:07:14
相關問題
- 1. 在第一次鼠標單擊時獲取活動應用程序的名稱
- 2. 列表項在第二次單擊事件時未響應
- 3. 在未聚焦的TideSDK應用程序中跟蹤鼠標活動
- 4. 在Windows 8 Metro應用程序中禁用鼠標過度聚焦
- 5. 第二次點擊標籤按鈕時應用程序崩潰
- 6. WPF C#中的捕獲鍵未聚焦時的應用程序
- 7. 第一次使用Facebook應用程序
- 8. WPF應用程序在單擊桌面圖標時未打開
- 9. 點擊listItem中的按鈕不響應第一次點擊,但響應第二次點擊,如何設置響應第一次點擊?
- 10. 在我的表單應用程序中生成鼠標點擊
- 11. 應用程序第一次運行時如何禁用單擊按鈕
- 12. 在應用程序未處於焦點時對事件做出響應
- 13. 在鼠標點擊上使用openwith啓動應用程序
- 14. 試圖用鼠標單擊事件響應代碼jQuery HTML5聊天框程序
- 15. 模擬鼠標點擊GUI應用程序而不需要鼠標或使用Python竊取焦點?
- 16. Windows應用程序聚焦:爲什麼需要點擊?
- 17. 點擊了下拉項不會在第一次點擊響應
- 18. 單擊按鈕時加載視圖mac osx應用程序
- 19. Flex捕獲應用程序上的所有鼠標單擊
- 20. 單擊左上角的鼠標右鍵在應用程序保護時崩潰
- 21. 第一次使用時創建應用程序數據
- 22. 將鼠標單擊發送到X另一個應用程序的Y座標
- 23. 沒有鼠標響應HTML音頻(Windows應用程序離子)
- 24. Telerik RadTimeline響應鼠標點擊
- 25. LibGDX TextButton不響應鼠標點擊
- 26. Emacsclient不響應鼠標點擊
- 27. excel沒有響應鼠標點擊
- 28. 如何在第一次啓動應用程序時使Activity只啓動一次?
- 29. 當文本被選中時,使鼠標點擊無響應
- 30. 在第二次應用程序啓動時跳過主菜單
你的例子不完全正確。 iTunes只在幾個地方支持點擊,比如窗口處於迷你模式。 – benzado 2008-10-02 22:13:00