2013-03-11 7 views
0

내 AppleScriptObjC 프로그램에는 많은 확인란이 있습니다. 버튼에 대한 각 항목 식별자가있는 문자열을 목록으로 반복하는 스크립트가 있습니다. 매개 변수를 기반으로 각 단추의 setState_ 메서드를 활성화해야합니다. 요약하면 다음과 같은 것을 찾고 있습니다.AppleScriptObjC를 사용하여 문자열 기반의 단추 상태를 어떻게 바꿀 수 있습니까?

set strIdentifier to "button identifier" 
    [magic code here!] 
    strIdentifier's setState_(1) 

어떤 도움을 주실 수 있나요?

답변

0

나는이 일을하는 '마술'이 없다고 생각합니다. 내 의도는 다음과 같이 당신의 체크 박스의 부모 뷰의 컨트롤을 반복하는 것입니다 :

여기
repeat with aSubview in theParentView's subviews() 
    if aSubview's title()'s isEqualToString_("Check") is not 0 then 
     aSubview's setState_(false) 
    end if 
end repeat 

theParentView은 체크 박스가 상주하는보기에 콘센트입니다. 가이 두 가지 옵션이 기본적으로 있습니다 : 각 식별자를 들어

  • 한 번 파단을 통해
  • 당신 루프가 파단 통해 루프와 키와 식별자로, 사전에 추가합니다. 나중에 사전에 대한 액세스를 통해 확인란에 액세스 할 수 있습니다. 두 번째 경우

코드는 다음과 같을 수 있습니다 :

set aDict to NSMutableDictionary's alloc()'s init() 

repeat with aSubview in theWindow's subviews() 
    aDict's setObject_forKey_(aSubview, aSubview's title()) 
end repeat 

aDict's objectForKey_("Check 1")'s setState_(false)