2014-11-19 2 views
0

세 개의 텍스트 필드에 입력 된 값을 반환하는 InDesign CS6 용 applescript 대화 상자가 있습니다. 여기InDesign CS6의 AppleScript 대화 상자 : 입력에서 숫자 범위를 제한하는 방법?

set userResponse to show myDialog 
if userResponse is true then 
    set docWidth to edit contents of myWidth as string 
    set docHeight to edit contents of myHeight as string 
    set docBleed to edit contents of myBleed as string 
    destroy myDialog 
else 
    destroy myDialog 
    error number -128 
end if 

나는 다음과 같은 논리를 추가하고 난 그냥 표시하고 오류를 정정 할 수 있도록 다음 이전 대화 상자로 돌아갑니다이 대화를 원하는 2160보다 큰 값을 입력에서 사용자를 방지 할 관련 단편이다 :

if 2160 < docWidth or docHeight then 
    beep 1 
    display alert "Document cannot be larger than 2160 inches in either dimension." buttons ["Try again"] default button 1 
end if 

이전 대화 상자에이를 삽입하지 않고 삽입 할 방법을 찾을 수 없습니다. 어떤 아이디어?

답변

1

나중에 문제를 해결하고 필요에 맞는 UI를 정의하지 마십시오. 여기에서 정수 값을 제공하기 위해 사용자가 원하는, 그래서 당신은 정수 editboxes 사용할 필요가 :

set myWidth to make real editboxes with properties {edit contents:"", min width:60, maximum value:2159, minimum value:1} 
set myHeight to make real editboxes with properties {edit contents:"", min width:60, maximum value:2159, minimum value:1} 
set myBleed to make real editboxes with properties {edit contents:"", min width:60, maximum value:2159, minimum value:1} 
: 사용자가 당신이 실제 편집 상자를 사용할 수있는 실제 값을 삽입 할 수 있어야합니다 경우

set myWidth to make integer editboxes with properties {edit contents:"", min width:60, maximum value:2159, minimum value:1} 
set myHeight to make integer editboxes with properties {edit contents:"", min width:60, maximum value:2159, minimum value:1} 
set myBleed to make integer editboxes with properties {edit contents:"", min width:60, maximum value:2159, minimum value:1} 

인사말, Michael/Hamburg

+0

정수 편집 상자와 같은 것이 있는지, 최소값과 최대 값을 설정할 수 있는지 알지 못했습니다. 감사! –

+0

모든 UI 요소와 해당 속성은 InDesign의 스크립팅 사전에서 UI Suite라는 항목 아래에 있습니다. 어쩌면 당신은 더 나은 것을 발견하거나 InDesign 자체 에서처럼 사용자가 위아래 화살표를 클릭 할 수 있기를 원할 것입니다. – ShooTerKo

+0

나는 그곳을 보았습니다. 그것은 수백만 항목의 엉망이었습니다. 사용하기 쉽지 않았습니다. 당신의 도움을 주셔서 감사합니다! –

관련 문제