2014-02-15 5 views
0

내 OS X App에서 Tab 키를 누르는 대신 Enter 키를 눌러 NSTextField 포커스를 어떻게 변경합니까?Enter 키를 눌러 NSTexfield 포커스를 변경하십시오.

+1

무엇을하고 싶습니까? Tab 키는 OS X 및 Enter - end 편집에서 기본적으로 포커스를 다음 컨트롤로 전환합니다. –

+0

편집을 끝내고 포커스를 다음 컨트롤로 동시에 전환하려면 ENTER 키를 누릅니다. 가능한가? – user3313512

답변

1

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 클래스에서 수행하는 것으로 가정합니다.

+0

이 방법을 사용하려고했습니다 : - (IBAction) changeFocus : (id) 보낸 사람 { NSResponder * resp = [보낸 사람 nextResponder]; [myWindow makeFirstResponder : resp]; } 이 작업을 내 텍스트 필드에 연결하면 Enter 키가 눌러 지지만 작동하지 않습니다. - ?? – user3313512

+0

메소드가 호출 될 것인가? –

+0

네, 확실 해요, [보낸 사람 nextResponder]가 작동하지 않는 것 같아요 – user3313512