Я динамично добавляю a NSTextField
к окну и у меня есть проблемы с рендерингом. Я выбираю цвет фона для черного цвета и цвет текста для белого. Они оба работа, но их - что, кажется, прямоугольник, который является частью текста, который является всегда белым. Кто-либо знает то, что я мог бы делать неправильно? Как я могу избавиться от белого фона, который является только вокруг текста? Код следующие:
//Create rectangle to size text field
NSRect textFieldRect = NSMakeRect(300, 300, 300, 54);
//Instantiate text field and set defaults
NSTextField* textField = [[NSTextField alloc] initWithFrame:textFieldRect];
[textField setFont:[NSFont fontWithName:@"Arial" size:48]];
[textField setTextColor:[NSColor whiteColor]];
[textField setStringValue:@"Some Text"];
[textField setBackgroundColor:[NSColor blackColor]];
[textField setDrawsBackground:YES];
[textField setBordered:NO];
[[window contentView] addSubview:textField];
Я попробовал ваш код на Mac OS X 10.6.4.
Внутри делегата приложения:
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
NSRect textFieldRect = NSMakeRect(300, 300, 300, 54);
NSTextField* textField = [[NSTextField alloc] initWithFrame:textFieldRect];
[textField setFont:[NSFont fontWithName:@"Arial" size:48]];
[textField setTextColor:[NSColor whiteColor]];
[textField setStringValue:@"Some Text"];
[textField setBackgroundColor:[NSColor blackColor]];
[textField setDrawsBackground:YES];
[textField setBordered:NO];
[[window contentView] addSubview:textField];
}
И вот результат
alt text http://www.freeimagehosting.net/uploads/26c04b6b64.png
Я не вижу никакого белого поля.
Возможно, вы используете другую ОС.
Или, возможно, у вас есть несколько других видов поверх друг друга, которые вызывают странный эффект, о котором вы говорите.
Хорошо,
Тайна частично раскрыта. В сочетании с моим NSTextField я также устанавливаю некоторые NSApplicationPresentationOptions для перевода приложения в режим киоска. Похоже, что что-то с этим вызывает проблему, которую я вижу. Если я не установил PresentationOptions, NSTextField будет отображаться именно так, как я хочу. Я отследу, какой именно PresentationOption виноват, и опубликую здесь.