2017-01-18 18 views
3

私はObjective CでMac OSXのためのアプリケーションを構築していますが、 "ドッキング"動作のサポートが組み込まれているかどうかは疑問です。私がこれを意味するのは、メインウィンドウのスロットの1つにフリーフローティングまたはスナップインすることができる他のウィンドウとの "スロット"を持つメインウィンドウです。ユーザーは、ウィンドウをクリックしてドラッグすることができ、ウィンドウを移動して、ウィンドウを希望の位置に「ドッキング」することができます。この種のサポートを持つ環境の例はQTですが、QTよりもCocoaを使用したいと思います。Mac OSX App - どのようにして "ドッキングウィンドウ"を作っていますか?

これまでのところ、私はトピックで何かを見つける運がなかった。

+0

'NSWindow'とそれに関連するクラスのサブクラス化を開始して、ちょっと突っ込んだのですか?私はあなたがドラッグイベントを上書きすることができると思うし、そこから必要に応じてウィンドウをスナップすることができると思います... –

答えて

1

先ほど紹介した機能(ウィンドウドロワーと呼ばれる)を実装できる標準クラスがありました。私は彼らがそれを非難したと信じているので、あなたは設計上の理由がないためにそれを使用することができません。あなたが本当にあなたの必要性に合っていると思うならば、メインウインドウの側面からスライドし、メインウインドウがドラッグされたときに動き回る別のウインドウ(枠線とツールバーなし)を作成することができます。

+0

合意。しかし、Appleはこの理由を理由にこれを非難し、それはベストプラクティスとApplesの設計の推奨事項に反しているとも言えるでしょう。 – d00dle

関連する問題