Hoe “ een antwoord nodig hebben ” in een dialoogvenster in AppleScript?

Als iemand een “Vraag om tekst ” -actie invoegt in hun workflow in Automator, krijgen ze de optie om “Vereist een antwoord” van de gebruiker:

voer hier de beschrijving van de afbeelding in

Als de gebruiker geen antwoord geeft, kan de gebruiker niet op de “OK” -knop drukken. De computer piept naar de gebruiker als de “OK” -knop wordt ingedrukt terwijl het antwoordveld leeg is.

Is er een manier om dit exacte gedrag te repliceren in AppleScript?

Antwoord

Ja, het kan als volgt worden bereikt:

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 

Laat me alsjeblieft weten of dit voor jou werkt.


Tweede versie die de gebruiker vertelt wat de fout is:

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 

Reacties

  • Het ' komt heel dichtbij. Het enige verschil is dat ik in uw versie op de " OK " -knop kan drukken; het dialoogvenster wordt vernieuwd als ik op " OK " druk. Is er geen manier om een knop daadwerkelijk uit te schakelen in AppleScript (zoals de actie " Vraag om tekst " " OK " als het veld leeg is)?
  • Het ' s is niet mogelijk om een knop uit te schakelen in een dialoogvenster gemaakt met AppleScript. U kunt dat echter bereiken met Swift.
  • Bedankt. U kunt een extra bericht weergeven met " display alert " om uw gebruiker te laten weten dat een antwoord vereist is.
  • Geweldig idee. Op die manier begrijpt de gebruiker wat verantwoordelijk was voor het veroorzaken van de vernieuwing.
  • Zie mijn tweede hierboven.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *