我有下面的代码在单独的函数中创建简单的 NSButton
-(void)myFunction
{
NSButton *btn = [self createButton:@"Button_Name"];
if(some condition )
{
[btn setEditable:YES];
}
}
- (NSButton*)createButton:(NSString *)buttonName
{
NSButton *btn = [[NSButton alloc] initWithFrame:NSMakeRect(20, 0, 20, 20)];
[btn setButtonType:NSSwitchButton];
[btn setImagePosition:NSImageOnly];
[btn setTarget:self];
[btn setTitle: buttonName];
return btn;
}
在我的相同中,它工作正常。我在一个大项目中使用此代码。它会正常工作还是会导致一些问题。这是正确的方法吗?
最佳答案
我想向您通报一些事情:
您传递了
buttonName
和buttonTitle
但从未使用过它。您创建了一个
NSButton
类型的对象,但您的对象名称违反了约定,通过读取btnCell
,有人会期望它是NSButtonCell
.在上面的代码中,我看不到对新创建的按钮的任何引用,即使您没有将其添加到任何 View 中。 (我希望在您真正的大项目中您不会错过这些。)
关于objective-c - 需要澄清 NSButton 的创建和使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20372286/