Разработвам приложение за MacOSX с Xcode5
Искам да контролирам, когато натискам tab върху избран NSPopUpButton, създадох свой собствен подклас на NSPopUpButton, наречен MyNSPopUpButton, и поставих това:
-(BOOL)canBecomeKeyView{
return YES;
}
Сега не мога да избера своите NSPopupButtons чрез натискане на клавиша Tab, но също така искам да контролирам къде да отида оттам, на NSTextFields използвам този метод:
-(BOOL)control:(NSControl *)control textView:(NSTextView *)textView doCommandBySelector:(SEL)commandSelector{
NSTextField *textField = (NSTextField *) control;
if (commandSelector == @selector(insertTab:) ||
commandSelector == @selector(insertNewline:)) {
if (textField == _diaTextField) {
[self.window makeFirstResponder:_cantidadDebeTextField];
}
if (textField == _cantidadDebeTextField) {
[self.window makeFirstResponder:_cuentaDebePopupButton];
}
if (textField == _cantidadHaberTextField) {
[self.window makeFirstResponder:_descripcionAsientoTextField];
}
if (textField == _descripcionAsientoTextField) {
[self.window makeFirstResponder:_descripcionBitacoraTextField];
}
if (textField == _descripcionBitacoraTextField) {
[self.window makeFirstResponder:nil];
}
return YES;
}
return NO;
}
Както можете да видите там, аз контролирам навигацията с клавиша TAB, искам да направя същото с NSPopUpButtons, но дори не мога да задам нито един делегат от тях като с NSTextFields,
Знам, че мога да направя това, като задам номера на етикетите им в правилния ред, но ще добавя програмно повече контроли върху времето за изпълнение
има ли начин да се контролира това от код???
Благодаря за подкрепата