ウィンドウのサイズを変更できないようにする | OS X | Objective-C プログラミング

PROGRAM


ウィンドウのサイズを変更できないようにする

OS X の NSWindow は、ウィンドウのサイズを簡単に固定できます。

Interface Builder で、画面の左側にあるドキュメントアウトラインから Window を選択します。そして右側のインスペクターで属性インスペクターを表示して、そこにある Resize のチェックを OFF にします。こうすることで、このウィンドウをユーザーがサイズ変更できないようになります。

 

Objective-C のコードで設定する場合は、NSWindow の styleMask を設定します。

この styleMask には複数のスタイルをまとめて設定できるようになっているので、設定を変更する場合は、既存の設定をそのまま使って、変更したい部分だけを調整する必要があります。

// サイズ変更できるようにする場合

self.window.styleMask = self.window.styleMask | NSResizableWindowMask;

 

// サイズ変更を禁止する場合

self.window.styleMask = self.window.styleMask & ~NSResizableWindowMask;

このようにすることで、ソースコードからでもウィンドウのサイズ変更を制限できます。

なお、ウィンドウの最小サイズや最大サイズを指定したい場合には ウィンドウの最大サイズや最小サイズを設定する で紹介した方法で簡単に実現できます。

[ もどる ]