2015-10-25 3 views
0

Я реализовал NSComboBoxDelegate:NSComboBox - как я могу реализовать делегат для двух разных comboBox?

-(void)comboBoxSelectionDidChange:(NSNotification *)notification{ 

} 

- (void)controlTextDidEndEditing:(NSNotification *)aNotification{ 

} 

- (void)comboBoxWillPopUp:(NSNotification *)notification{ 

} 

- (void)comboBoxWillDismiss:(NSNotification *)notification{ 
} 

, но у меня есть 2 ComboBoxes - с 2-мя различными функциональными возможностями. Есть ли способ узнать, какой comboBox не работает, и действовать соответственно?

или мне нужно реализовать 2 разных делегата на улице? и если да - есть ли простой способ передачи информации обратно в мой диспетчер представлений?

есть ли способ получить информацию об отправителе уведомление?

ответ

3

Для изменения текста (controlTextDidEndEditing, controlTextDidChange ...), см. Следующий пример.

- (void)controlTextDidEndEditing:(NSNotification *)obj { 
    if ([obj object] == combobox1) { 

    } 
    else if ([obj object] == combobox2) { 

    } 
} 

Что касается выбора, вам необходимо создать соединения IBAction для соответствующих объектов.

0

Почему бы вам не использовать теги? вы можете назначить тег 101 одному из них и 102 другому, а затем, когда они запускают делегат, вам просто нужно иметь предложение if, чтобы проверить тег объекта.

1

Объект уведомления ([notification object] или notification.object) будет полем со списком, отправившим уведомление.

 Смежные вопросы

  • Нет связанных вопросов^_^