2012-05-11 6 views
0

나는 Shared User Default Controller 에 바인딩 된 값을 가진 NSTextField을 가지고 있습니다. 사용자가 "Enter"ok 키보드를 누를 때만 NSUserDefault 값이 변경됩니다.NSTextField 반환 버튼을 누르는 시뮬레이션

사용자가 UI에서 버튼을 누를 때 동일한 효과 (특정 필드에서의 리턴 히트 시뮬레이션)를 만들고 싶습니다.

가능합니까?

답변

1

바인딩에서 "계속 업데이트 값"상자를 체크하여 사용자가 입력 할 때 기본값이 업데이트되도록 할 수 있습니다. 따라서 단추 방법으로 값을 확인하면 항상 최신 상태로 유지됩니다. 텍스트 필드의 값을 업데이트하는 좀 더 일반적인 해결책은 텍스트 필드에서 첫 번째 응답자가 아닌 다른 것을 만들도록하는 것입니다 (텍스트 필드에서 다음 응답자로 탭을 전환 할 때 발생합니다). 다음과 같이 할 수 있습니다 :

[window makeFirstResponder : window]; 당신의 단추의 동작에

1

, 이렇게 :

[[NSUserDefaultsController sharedUserDefaultsController] commitEditing] 
관련 문제