내 OS X App에서 Tab 키를 누르는 대신 Enter 키를 눌러 NSTextField
포커스를 어떻게 변경합니까?Enter 키를 눌러 NSTexfield 포커스를 변경하십시오.
답변
NSText
- (void)textDidEndEditing:(NSNotification *)aNotification
대리자 방법을 사용하면 NSWindow
: makeFirstResponder
:을 사용하여 현재 첫 번째 응답자를 변경해야합니다. 자세한 내용은 NSResponder class reference을 참조하십시오.
첫 번째 세트는 delegate
이며 전나무 textField는 self
입니다. 그런 다음 같은 클래스에서 :
- (void)textDidEndEditing:(NSNotification *)aNotification {
NSLog(@"delegate method");
[self.window makeFirstResponder:[[[aNotification object]window]nextResponder]];
}
이 작업은 AppDelegate 클래스에서 수행하는 것으로 가정합니다.
이 방법을 사용하려고했습니다 : - (IBAction) changeFocus : (id) 보낸 사람 { NSResponder * resp = [보낸 사람 nextResponder]; [myWindow makeFirstResponder : resp]; } 이 작업을 내 텍스트 필드에 연결하면 Enter 키가 눌러 지지만 작동하지 않습니다. - ?? – user3313512
메소드가 호출 될 것인가? –
네, 확실 해요, [보낸 사람 nextResponder]가 작동하지 않는 것 같아요 – user3313512
무엇을하고 싶습니까? Tab 키는 OS X 및 Enter - end 편집에서 기본적으로 포커스를 다음 컨트롤로 전환합니다. –
편집을 끝내고 포커스를 다음 컨트롤로 동시에 전환하려면 ENTER 키를 누릅니다. 가능한가? – user3313512