Om man infogar en ”Be om text ” -åtgärd i sitt arbetsflöde i Automator, får de möjlighet att ”Kräva ett svar” av användaren:
Om användaren inte svarar kan användaren inte trycka på ”OK” -knappen. Datorn piper på användaren om ”OK” -knappen trycks in medan svarsfältet är tomt.
Finns det ett sätt att replikera detta exakta beteende i AppleScript?
Svar
Ja, det kan göras så här:
repeat set myAnswer to the text returned of (display dialog "Your question goes here." default answer "") if myAnswer is "" then beep else exit repeat end if end repeat
Låt mig veta om detta fungerar för dig.
Andra versionen som berättar för användaren vad felet är:
repeat set myAnswer to the text returned of (display dialog "Your question goes here." default answer "") if myAnswer is "" then beep display alert "Please enter your answer to continue." else exit repeat end if end repeat
Kommentarer
- Det ' är mycket nära. Den enda skillnaden är att jag kan trycka på knappen " OK " i din version; dialogrutan uppdateras om jag trycker på " OK ". Finns det inget sätt att inaktivera en knapp i AppleScript (som " Be om text " inaktiverar " OK " när fältet är tomt??
- Det ' det går inte att inaktivera en knapp i en dialogruta som skapats med AppleScript. Du kan dock göra det med Swift.
- Tack. Du kan visa ett ytterligare meddelande med " displayvarning " för att låta användaren veta att ett svar krävs.
- Bra idé. På det sättet förstår användaren vad som var ansvarigt för att orsaka uppdateringen.
- Se min andra ovan.