// VDS 7 “Renaissance”
Voorbeeld
Een volledig voorbeeld in Visual DialogScript: WinTouch, een sleep-en-neerzet-hulpprogramma om bestandsdatums en -tijden te wijzigen, met becommentarieerde code.
Hier is een voorbeeld van wat met Visual DialogScript mogelijk is. De onderstaande dialoog is een Windows-'touch'-hulpprogramma dat de datum- en tijdstempels van een reeks bestanden instelt op een door u opgegeven waarde.
WinTouch, het hulpprogramma
Het programma gebruikt slepen en neerzetten: u sleept de bestanden die u wilt 'touchen' eenvoudig naar de keuzelijst, voert de datum en tijd in en drukt op Touch.

De code
TITLE WinTouch
DIALOG CREATE,WinTouch,-1,0,268,180,DRAGDROP,SAVEPOS
DIALOG ADD,TEXT,TEXT1,10,10,,,Files to touch:
DIALOG ADD,LIST,FileList,30,10,240,80
DIALOG ADD,TEXT,TEXT2,120,10,,,Date:
DIALOG ADD,TEXT,TEXT3,140,10,,,Time:
DIALOG ADD,EDIT,Date,120,40,60,,@datetime(ddddd)
DIALOG ADD,EDIT,Time,140,40,60,,@datetime(t)
DIALOG ADD,BUTTON,Touch,120,110,140,40,Touch!
DIALOG SHOW
:again
dialog disable,Touch
:evloop
wait event
goto @event()
:TouchBUTTON
list seek,FileList,0
repeat
%F = @item(FileList)
file setdate,%F,@dlgtext(time),@dlgtext(date)
list delete,FileList
until @zero(@count(FileList))
goto again
:DragDrop
list DROPFILES,FileList
dialog enable,Touch
goto evloop
:CLOSE
exit
Hoe het werkt
Allereerst is het de moeite waard erop te wijzen dat als u de Dialog Wizard gebruikt om het programma te genereren nadat u de dialoog met de Dialog Editor hebt ontworpen, u in feite slechts tien van de in totaal 29 regels code van dit programma zelf hoeft te schrijven.
Het commando title stelt eenvoudig de titel van de toepassing in. Het commando dialog create definieert de dialoog zelf en wordt met de Dialog Editor gemaakt. De enige wijziging is het invoegen van de twee @datetime-functieaanroepen in de twee EDIT-dialoogelementen, die de twee invoervelden op de begindatum en -tijd instellen. De parameters DRAGDROP en SAVEPOS geven aan dat we willen dat het programma reageert op sleep-en-neerzet-bewerkingen, en dat we willen dat de dialoog de positie onthoudt waar we hem het laatst op het scherm hebben geplaatst.
Het commando dialog disable schakelt de Touch-knop uit, zodat die niet kan worden ingedrukt als er geen bestanden in de lijst staan. De regels :again en :evloop zijn labels. De twee regels na :evloop wachten tot er iets gebeurt (een gebeurtenis genoemd) en gaan dan naar een label met een naam die overeenkomt met het type gebeurtenis. Er zijn drie mogelijke soorten gebeurtenissen: TouchBUTTON, die optreedt wanneer de Touch-knop wordt ingedrukt; DRAGDROP, die optreedt wanneer een sleep-en-neerzet-bewerking plaatsvindt; en CLOSE, die optreedt wanneer de gebruiker de dialoog sluit. DialogScript is niet hoofdlettergevoelig in de behandeling van labels. Alle labels en de skelet-code voor gebeurtenisafhandeling worden door de Dialog Wizard gegenereerd, als u die gebruikt, zodat uw eigen bijdrage er enkel in bestaat wat code na de gebeurtenislabels in te voegen om te bepalen wat het programma moet doen.
De DRAGDROP-gebeurtenis wordt eenvoudig afgehandeld met het commando list DROPFILES,FileList, dat de namen van de gesleepte en neergezette bestanden aan de keuzelijst toevoegt. Het programma keert vervolgens terug naar :evloop om op de volgende gebeurtenis te wachten. De zes regels na :TouchBUTTON verwijderen de bestandsnamen één voor één uit de keuzelijst en gebruiken het commando file setdate om de datum en tijd te wijzigen in die welke in de twee invoervelden is opgegeven. Zodra alle bestanden zijn verwerkt, keert het programma terug naar :again. De standaardactie voor de CLOSE-gebeurtenis is het programma te beëindigen.
Scripts uitvoeren
De Personal-versies van Visual DialogScript zijn bedoeld voor het schrijven van scripts die op dezelfde pc worden uitgevoerd. Dankzij het ingebouwde bestandsassociatiemechanisme van Windows wordt het script uitgevoerd wanneer u dubbelklikt op het pictogram ervan. Er wordt een hulpmiddel geleverd waarmee u Start-menupictogrammen kunt maken voor de scripts die u maakt.
Met de Standard- en Professional-versies kunt u uitvoerbare bestanden maken die samen met een run-time-engine kunnen worden verspreid, zodat ze kunnen worden uitgevoerd op pc's zonder een gelicentieerd exemplaar van Visual DialogScript. Er zijn geen royaltybetalingen nodig om de run-time te verspreiden. Daardoor is Visual DialogScript het meest kosteneffectieve hulpmiddel wanneer scriptprogramma's binnen een organisatie moeten worden verspreid: voor de meeste Windows-batchtalen moet per systeem een licentie worden afgenomen.
Nog andere vragen over de functionaliteit van Visual DialogScript? Bezoek de supportpagina.
Bouw het met VDS 7.
De volledige IDE + taal. Windows & Linux · 32/64-bit · Unicode.