2

NSView

NSTextFieldsをビュー内に配置するのに問題があるので、皆さんが私を助けてくれることを願っています。私はこのNSView*theViewを持っており[theView setFrame:NSMakeRect(10, 10, 64, 64)];、ビューを希望の場所に正確に配置します。

しかし今、私はNSTextFieldをサブビューとしてtheViewに追加しようとしていますが、何かが正しくありません。上の画像は、あるべき姿です。

これが私のコードとそれがどのように見えるかです:

primaryDigit = [[NSTextField alloc] init];
[primaryDigit setFrame:NSMakeRect(4, 6, 60, 58)];
[primaryDigit setFont:[NSFont fontWithName:@"Helvetica Neue" size:55]];
[primaryDigit setBezeled:NO];
[primaryDigit setEditable:NO];
[primaryDigit setSelectable:NO];
[primaryDigit setDrawsBackground:NO];
[primaryDigit setTextColor:[NSColor whiteColor]];
[primaryDigit setStringValue:@"2"];
[self addSubview:primaryDigit];

間違い

そして、私がそう[primaryDigit setFrame:NSMakeRect(0, 0, 64, 64)];するとき、数字は左下隅に行き着きませんが、それはこれをします:

変

これらのビューの配置について私が理解していない基本的なことはありますか?私はかなり初心者ですが、それでも私はこれを理解していると思いました。(ところで、これらの画像ではフォントが異なりますが、問題は発生しないと思いますか?)

更新:「dasdom」が私に求めたように、これが背景色のテキストフィールドです 背景色

4

1 に答える 1

1

さて、私は問題が何であるかを知りました。

NSTextFieldsのテキストは、それらの周りに「スペース」が必要です。したがって、テキストがある場合、ビューの左下隅には表示されませんが、ビューから少し離れた位置にあります。

これは、NSTextFieldsに十分な大きさのフレームがない場合、テキストが途切れて表示される可能性があることも意味します。

ここでの例:2

「2」の上のすべての赤いスペースがそこにある必要があります。そうしないと、数字がフレームから移動し、下部で切り取られます。

于 2012-06-29T14:20:00.880 に答える