대화 상자 (6 자리 코드)에 텍스트를 표시해야하는 몇 가지 작업을 자동화하려고합니다. 나는 애플 스크립트의 분야에서 초보자이고 비슷한 일이 이렇게 할 수있는 몇 가지 예를 읽고AppleScript를 사용하여 NSTextFieldCell 값 가져 오기
:
접근성 경위는 다음과 같은 계층 구조를 밝혀
set myText to textField's stringValue() as text
하지만 내 경우에는 작동 할 수 있는지 확실하지 않습니다. e 접근성 검사자는 NSTextFieldCell
에 6 자리 코드가 포함 된 변수 이름을 표시하지 않습니다.
NSTextFieldCell
에서 6 자리 코드를 추출하고 쉘 스크립트가이 코드를 사용할 수 있도록이 값을 반환 할 수 있습니까?
지금이 바로 같은이 -
tell application "FollowUpUI"
activate
# get the 6 digit code
end tell
업데이트
도움이 후를, 내가 텍스트 필드에 통과하는 것을 시도했다
tell application "System Events"
repeat with theProcess in processes
#initialize
tell theProcess
set processName to name
set allWindows to windows
end tell
#check if process exists
if processName is "FollowUpUI" then
activate
say "FollowUpUI found"
set windowsCount to count of the allWindows
#only one window should exist
if windowsCount is 1 then
say "1 window was found"
tell window 1
tell group 1
tell text field 1
set code to value
end tell
end tell
end tell
end if
end if
end repeat
end tell
하지만, 오류로 인해 막혔습니다 -
System Events got an error: cant get window 1. Invalid index.
구문 오류인지 확실하지 않습니다. 모든 포인터가 도움이 될 것입니다. 당신이 참조해야하기 때문에 감사
AppleScript에서'System Events'와 (GUI) 스크립팅을 사용해야합니다. Cocoa를 사용하면 다른 응용 프로그램/프로세스의 UI 요소에 액세스 할 수 없습니다. – vadian
올바른 방향, 예를 들어 알려주시겠습니까? 나는 못생긴 해결책을 생각하지 않을 것이다. –
"[프로세스 이름]"프로세스에게 "값을 값으로 설정하도록 텍스트 필드 1에 알리려면 그룹 1에게 알리려면"[응용 프로그램] "시스템 이벤트"에 명령을 전달해야합니다. '[] '의 모든 값은 괄호가없는 실제 코드에서 임의적입니다. – vadian