Swift
とCocoa
でマウスカーソルを隠す方法をドキュメントから探した。
3通りの方法があった。
CGDisplayHideCursor(id)
これで隠すと、再び表示させる時に、CGDisplayShowCursor(id)
を使う必要がある。
ウィンドウ外にでて、Dockを表示させようとしても(普段しまうようにしている)表示させられる。
原因は不明だが、カーソルが隠れないことがあった。
NSCursor.hide()
これもだいたい同じで、再び表示させる時に、NSCursor.unhide()
を使う必要がある。
ウィンドウ外にでて、Dockを表示させようとしても表示させられる。
これも原因は不明だが、カーソルが隠れないことがあった。
NSCursor.setHiddenUntilMouseMoves(Bool)
これは名前の通り、true
を渡すとマウスカーソルが動くまで隠してくれる。false
を渡して呼んでも再び表示される。
NSCursor.hide()はNSCursor.setHiddenUntilMouseMoves(Bool)をオーバーライドしている。
これは隠れてくれた。
希望にあった動作をするのは3つ目だったのでそれを利用することにした。
参考
- CGDisplayHideCursor(_:) - Core Graphics | Apple Developer Documentation
- hide() - NSCursor | Apple Developer Documentation
- setHiddenUntilMouseMoves(_:) - NSCursor | Apple Developer Documentation
Swift実践入門 ── 直感的な文法と安全性を兼ね備えた言語 (WEB+DB PRESS plus)
posted with amazlet at 17.10.19
石川 洋資 西山 勇世
技術評論社
売り上げランキング: 16,482
技術評論社
売り上げランキング: 16,482
MAC OS X COCOAプログラミング 第4版
posted with amazlet at 17.10.19
アーロン ヒレガス アダム プレブル
東京電機大学出版局
売り上げランキング: 551,062
東京電機大学出版局
売り上げランキング: 551,062
コメント