可可 - 将NSTextfield添加到NSRect

时间:2012-10-24 15:09:29

标签: cocoa nstextfield nsrect

我很困惑为什么下面的代码不起作用,我想要实现的是在NSRect中有一个NSTextfield但是我不确定它是否可能,如果它是如何做的,我尝试了下面的代码,但它不起作用......

NSRect city_label = NSMakeRect(20, 20, 7, 7);

NSTextField *label = [[NSTextField alloc] initWithFrame:city_label];

label.stringValue = @"Contents of NSTextfield";

NSRect在NSView中绘制

任何想法?

1 个答案:

答案 0 :(得分:1)

NSRect不是那种可以“在NSView中绘制”的实体 - 它不是NSView子视图的实例。 NSRect只是C struct描述大小(宽度和高度)和原点(x和y)。

使用其框架初始化NSTextField后(请记住,此处的原点相对于您将文本字段添加为子视图的视图),您必须将其添加到您想要的视图中拥有超级视图。假设我们在NSViewController的自定义子类中,您的代码只需要这个额外的行

[self.view addSubview:label];