2013-06-30 2 views
0

내가 생각하는 것을 수행하려고하는 것은 클립 보드의 문자열을 NSTextField에 붙여 넣는 코코아 (Mac OSX 10.8)에서 아주 간단한 작업입니다.NSTextField isFirstResponder

현재 클립 보드에 보관되어있는 문자열에 액세스하는 방법을 알고 있지만 현재 내 UI에서 3 개의 텍스트 필드 중 어떤 것이 선택되었는지 확인할 수 없다는 문제가 있습니다.

시도 1 :

'붙여 넣기'명령을 수행, 각 텍스트 필드를 물어은 아이폰 OS 디바이스에서, 나는 [aTextField isFirstResponder]처럼이 일을 할 것 '? 당신은 선택',하지만이 방법은 '아무튼 t는 NSTextField에 존재하며, 동일한 것을 찾을 수 없습니다.

시도 2 ​​

3 NSTextFields 중 하나가 선택된다

에서, '활성'필드로 그 TF를 저장하고, 사용자가 붙여 넣기를 선택하면,이 문자열을 붙여. 일반적으로 일어날 것 같은 (

-(void)controlTextDidBeginEditing:(NSNotification *)obj {} 

이 만 사용자가 그들은 단지 그것을 선택하지 때, 텍스트를 편집 할 때 호출되는 : 여기서 문제는 내가 텍스트 필드에 대리인으로 내 컨트롤러를 설정하고 구현하는 경우이다 사용자가 상단에 붙여 넣으려는 경우),이 방법에서는 현재 선택된 텍스트 필드와 텍스트를 붙여 넣을 위치를 알 수 없습니다.

누구든지 Mac OSX에서이 간단한 작업에 어떻게 접근해야하는지 알고 있습니까? 사용자가 클립 보드의 일부 텍스트를 텍스트 필드에 붙여 넣기 만하면됩니다.

답변

0

-[NSWindow firstResponder]을 사용하여 창에서 첫 번째 응답자를 찾을 수 있습니다. 그런 다음 paste: 작업을 보낼 수 있습니다. 이것이 편집 메뉴의 표준 붙여 넣기 항목이 작동하는 방식입니다.

+0

나는 이것이 단순 할 것이라고 생각했다. 고마워! – Mike