如何以编程方式创建NSTextField?

时间:2012-02-03 11:37:06

标签: macos cocoa xcode4.2 nstextfield

我想以编程方式创建NSTextField。我是Mac App Development的新手 任何人都可以帮助我吗?

更新:
我试过这段代码

- (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 个答案:

答案 0 :(得分:3)

在Cocoa中以编程方式创建UI元素非常简单。

它涉及两个步骤:

  1. 创建视图并为其设置框架。

  2. 将其作为子视图添加到任何超级视图。

  3. 以下代码段将帮助您更好地理解。

    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 :(得分:1)

看起来您正在创建NSTextField确定,但您不会将其添加到视图层次结构中可见的任何位置。您的应用可能包含一个或多个NSWindow个实例;如果您希望视图显示在特定窗口中,则应将其添加为该窗口内容视图的子视图。