Jak “ wymagać odpowiedzi ” w oknie dialogowym w AppleScript?

Jeśli ktoś wstawi czynność „Zapytaj o tekst ” do swojego przepływu pracy w Automatorze, zostanie mu przedstawiona opcja „Wymagaj odpowiedzi” od użytkownika:

tutaj wprowadź opis obrazu

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.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *