如何区分委托给一个comboBoxSelectionDidChange的不同组合框:

Lor*_*mer 3 objective-c

我可以将两个NSComboBox委托给一个comboBoxSelectionDidChange:方法并运行if语句来区分这两个框吗?

NSG*_*God 5

我相信这可能是您可以使用NSNotification对象方法获取指向触发通知的组合框的指针的情况.

例如:

假设你的.h文件中有这样的东西:

@interface MDAppController : NSObject {
    IBOutlet NSComboBox   *comboBox1;
    IBOutlet NSComboBox   *comboBox2;
} 

@end
Run Code Online (Sandbox Code Playgroud)

在.m文件中:

- (void)comboBoxSelectionDidChange:(NSNotification *)notification {
    NSComboBox *comboBox = (NSComboBox *)[notification object];
    if (comboBox == comboBox1) {
        // do something
    } else if (comboBox == comboBox2) {
        // do something else
    }
}
Run Code Online (Sandbox Code Playgroud)