Jak “ vyžadovat odpověď ” v dialogu v AppleScript?

Pokud někdo vloží do svého pracovního postupu v automatu akci „Požádat o text „, zobrazí se mu možnost „Vyžadovat odpověď“ uživatele:

zde zadejte popis obrázku

Pokud uživatel neposkytne odpověď, nemůže stisknout tlačítko „OK“. Pokud uživatel stiskne tlačítko „OK“, zatímco je pole pro odpověď prázdné, počítač na něj pípne.

Existuje způsob, jak toto přesné chování replikovat v AppleScript?

Odpověď

Ano, lze toho dosáhnout takto:

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 

Dejte mi prosím vědět, jestli to pro vás funguje.


Druhá verze, která uživateli řekne, v čem je chyba:

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 

Komentáře

  • Je ' velmi blízko. Jediný rozdíl je v tom, že mohu ve vaší verzi stisknout tlačítko " OK "; dialog se obnoví, když stisknu " OK ". Neexistuje způsob, jak skutečně deaktivovat tlačítko v AppleScriptu (například akce " Ask for Text " zakáže " OK " když je pole prázdné)?
  • Je ' s není možné deaktivovat tlačítko v dialogovém okně vytvořeném pomocí AppleScript. Toho však můžete dosáhnout pomocí Swiftu.
  • Děkuji. Další zprávu můžete zobrazit pomocí " zobrazit upozornění " a dát uživateli vědět, že je požadována odpověď.
  • Skvělý nápad. Tímto způsobem uživatel chápe, co bylo odpovědné za způsobení aktualizace.
  • Viz moje druhá výše.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *