Jeśli ktoś wstawi czynność „Zapytaj o tekst ” do swojego przepływu pracy w Automatorze, zostanie mu przedstawiona opcja „Wymagaj odpowiedzi” od użytkownika:
Jeśli użytkownik nie udzieli odpowiedzi, nie może nacisnąć przycisku „OK”. Komputer wyemituje sygnał dźwiękowy, jeśli przycisk „OK” zostanie naciśnięty, gdy pole odpowiedzi jest puste.
Czy istnieje sposób na odtworzenie tego dokładnego zachowania w AppleScript?
Odpowiedź
Tak, można to zrobić w ten sposób:
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
Daj mi znać, czy to działa.
Druga wersja, która informuje użytkownika o błędzie:
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
Komentarze
- Jest ' bardzo blisko. Jedyną różnicą jest to, że mogę nacisnąć przycisk " OK " w Twojej wersji; okno dialogowe jest odświeżane, jeśli naciśnę " OK ". Czy nie ma sposobu, aby faktycznie wyłączyć przycisk w AppleScript (na przykład akcja " Zapytaj o tekst " wyłącza " OK " gdy pole jest puste)?
- It ' s nie można wyłączyć przycisku w oknie dialogowym utworzonym za pomocą AppleScript. Możesz to jednak osiągnąć dzięki Swift.
- Dziękuję. Możesz wyświetlić dodatkową wiadomość, używając " alertu wyświetlania ", aby poinformować użytkownika, że wymagana jest odpowiedź.
- Świetny pomysł. Dzięki temu użytkownik zrozumie, co było odpowiedzialne za spowodowanie odświeżenia.
- Zobacz moją drugą powyżej.