1

NSTableColumnいくつかのを動的に作成していますが、テーブルでは高すぎるように見えます。Interface Builderには、オブジェクトサイズ(ミニ、スモール、レギュラー)を調整するための一般的な設定があります。これに相当するコードはありますか、それとも単にフォントを手動で選択する必要がありますか?

アップデート

次の方法でフォントを取得できることがわかりました。

    NSFont *font = [NSFont systemFontOfSize:[NSFont systemFontSizeForControlSize:NSMiniControlSize]];

ただし、行の高さがアイテムの高さと一致しません。コードでフォントを設定しても、行の高さには影響しません。NSTextFieldCellsとNSPopUpButtonCellsをデータセルとして使用します。

ああ、私は10.6のために構築しています。

4

2 に答える 2

2

フォントの変更に加えて、セルのコントロールサイズを設定する必要があります。

NSCell *theCell = ...;
[theCell setFont:[NSFont systemFontOfSize:[NSFont systemFontSizeForControlSize:NSMiniControlSize]]];
[theCell setControlSize:NSMiniControlSize];
于 2011-10-08T00:07:00.293 に答える
0

Appleは現在、このための公式ガイドを提供しています。

これがコピーされたコードスニペットです。

float fontSize = [NSFont systemFontSizeForControlSize:NSMiniControlSize];
NSCell *theCell = [theControl cell];
NSFont *theFont = [NSFont fontWithName:[[theCell font] fontName] size:fontSize];
[theCell setFont:theFont];

[theCell setControlSize:NSMiniControlSize];

[theControl sizeToFit];
于 2014-10-12T11:37:55.743 に答える