0

設定したウィンドウがありますsetContentBorderThickness:42 forEdge:NSMinYEdge

これで[[window contentSize] frame]、ウィンドウのサイズ(タイトルとボタンのあるトップバーを除く)が表示されますが、境界線の太さの42が差し引かれることはありません。

空の領域の適切な寸法を取得するにはどうすればよいですか?

4

1 に答える 1

0

ではなく、を使用する必要contentSizeがありcontentViewます。また、42ピクセルの高さのBorderThicknessを使用する場合は、次のようにウィンドウビューの高さからその高さを差し引くだけではありません。

NSRect windowFrame = [[window contentView] frame];

windowFrame.size.height = windowFrame.size.height - [window contentBorderThicknessForEdge:NSMinYEdge];

NSLog(@"TRUE height: %f",windowFrame.size.height);
于 2012-04-29T13:38:30.847 に答える