Как создать NSTextField программно? - PullRequest
2 голосов
/ 03 февраля 2012

Я хочу создать NSTextField программно.Я новичок в разработке приложений для Mac.
Кто-нибудь может мне помочь в этом?

Обновление:
Я попробовал этот код

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
    NSView *myView = [[NSView alloc] init];
    NSRect frameRect = NSMakeRect(20,20,100,140);
    NSTextField *myTextField = [[NSTextField alloc] initWithFrame:frameRect];
    [myView addSubview:myTextField];
}

Это ничего не делает.Пожалуйста, поправьте меня, если я где-то ошибаюсь.

Спасибо.

Ответы [ 2 ]

3 голосов
/ 03 февраля 2012

Создание элементов пользовательского интерфейса программно очень просто в Какао.

Включает два этапа:

  1. Создайте вид и установите для него рамку.

  2. Добавьте его как подпредставление к любому суперпредставлению.

Следующий фрагмент поможет вам лучше понять.

NSRect frameRect = NSMakeRect(20,20,40,40); // This will change based on the size you need

NSTextField *myTextField = [[NSTextField alloc] initWithFrame:frameRect];

[myView addSubview:myTextField];
1 голос
/ 03 февраля 2012

Похоже, вы создаете NSTextField ОК, но вы не добавляете его нигде в иерархии представлений. Возможно, ваше приложение содержит один или несколько экземпляров NSWindow; если вы хотите, чтобы представление отображалось в определенном окне, вы должны добавить его как подпредставление представления содержимого этого окна.

...