2011-01-20 11 views
1

通常のNSWindowウィンドウ(右端)に収まるようにNSViewサブクラスを用意しました。NSWindowのNSWindowリサイズコントロール

ビューは背景色を描画し、アプリケーションの実行時には、右下隅の標準ウィンドウサイズ変更コントロールをカバーします。コーナーをドラッグしてウィンドウのサイズを変更することもできます。

私のビューのサイズをウィンドウの端にあまり行き渡らないように変更すると、サイズ変更コントロールが描画されているのがわかりますが、ビューが重なっていることは明らかです。

誰でもこの問題を解決する方法を知っていますか?私は自分でサイズ変更コントロールを描画する必要がありますか?

ここには私が意味するものを示すscreenshotがあります。

+0

メインビューの上にリサイズハンドル付きのNSImageViewを追加しようとしましたが、それでも機能しません。私の主なビューはレイヤーバックであるため、何らかの理由で他のすべてのビューよりも合成されることがあります。 – Zac

答えて

0

自分でグリップを描くか、背景の右下隅をノックアウトする必要があります。あなたの視点がウィンドウの端にぴったり合っているとすれば、私はそれを自分で描き、それを完了させるだけです。

私はあなたがこのようにしているとドラッグ・トゥ・サイズ・リサイズを処理しなければならないと思うだけですが(私を引用しないでください)。その場合は、そのコーナーのNSTrackingAreaを作成し、ウィンドウ枠の変更(サイズと起点)としてその領域のドラッグを処理する必要があります。

0

私はハンドルのイメージを含むレイヤーを作成し、それをビューのレイヤーの右下隅に配置することで作業しました。私は自分自身をドラッグを実装する必要はありません - それは動作します。

0

バックアップされたレイヤーとホストされたレイヤーを使用します。ホストされたレイヤーは、通常、本当にカスタムのもので、私の経験ではボーダーレスウィンドウに適用されます。