8

Cocoa アプリケーションを作成していますが、何かを行う方法がわかりません。

Wallet のようなカスタムの外観で NSTextField を作成したい:

ウォレットのスクリーンショット。

NSTextField のサイズを変更する方法はわかりましたが、フォントとそのサイズを変更する方法がわかりません。このように NSTextFieldCell をサブクラス化しましたが、機能しません。システム フォントを選択しないとフォントは変更されず、サイズは行の高さのみを変更し、文字の高さは変更しません。

ヘッダファイル:

#import <Cocoa/Cocoa.h>

@interface VLTextFieldCell : NSTextFieldCell {
}
@end

クラスファイル:

#import "VLTextFieldCell.h"

@implementation VLTextFieldCell

- (NSFont *)font
{
    return [NSFont fontWithName:@"Lucida Grande" size:16.0];
}

@end
4

2 に答える 2

14

NSTextField のフォントを変更するには、Interface Builder でフォント パネルを使用するか、実行時に -setFont: を使用してフォントを変更します。

別のフォントを使用するためだけに NSTextField または NSTextFieldCell をサブクラス化する必要はありません。

于 2009-07-08T22:48:33.347 に答える
7
[label setFont:[NSFont fontWithName:@"Arial-BoldItalicMT" size:20]];

setFont:NSControlのスーパークラスで宣言されていNSTextFieldます。

于 2014-05-28T01:04:10.760 に答える