În general, utilizatorul raspunde la aparitia unei boxe de dialog prin actionarea butonului adecvat raspunsului sau si/sau prin înscrierea unei informatii într-o zona dedicata acestui scop. Informatia înscrisa este transferata programului ca valoare a functiei care initiaza dialogul grafic.
Apelul functiei InputBox afiseaza o boxa de dialog care conti 444g68e ne un mesaj, doua butoane (OK si Cancel) si o zona text în care se poate tasta un raspuns (de tip String, chiar daca se transmite o valoare numerica). Se asteapta ca utilizatorul sa introduca un text în zona rezervata sau sa actioneze un buton. Textul introdus este transmis ca valoare a functiei la actionarea butonului OK (sau Enter), iar actionarea butonului Cancel (ca si închiderea dialogului ca fereastra) transmite un sir de lungime zero (indiferent de valoarea zonei text. Sintaxa este
InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context])
unde
prompt este expresia String cu mesajul afisat în dialog (max. 1024 caractere). Mesajul poate fi aranjat pe mai multe linii prin combinatii de caractere Chr(13) – carriage return, Chr(10) – linefeed, Chr(13)&Chr(10) – CR+LF.
title este expresia de tip String cu titlul ferestrei dialogului. Daca este omis se va folosi titlul aplicatiei.
default este expresia de tip String, optionala, continând textul afisat initial în zona text rezervata utilizatorului. Textul este, în lipsa modificarii lui, retransmis ca raspuns (actionând butonul OK).
xpos este expresia numerica specificând pozitia orizontala a dialogului (în twips, de la latura stânga a ecranului). În lipsa argumentului, boxa de dialog este centrata orizontal.
ypos este expresia numerica specificând pozitia verticala a dialogului (în twips, de la latura de sus a ecranului). În lipsa argumentului, boxa de dialog este pozitionata la aproximativ o treime de ecran.
helpfile este expresia de tip String care identifica fisierul Help utilizat.Daca este indicat helpfile, trebuie sa fie precizat si context. Textul de ajutor poate fi vazut prin tasta F1, anumite aplicatii afiseaza si un buton Help.
context Expresie numerica cu numarul de context Help al intrarii corespunzatoare dialogului afisat. Apare obligatoriu împreuna cu helpfile.
Daca valoarea functiei nu este atribuita (sau utilizata într-o alta expresie), este evident ca se pierde, fara semnalarea vreunei erori.
Un dialog mai simplu decât InputBox este realizat prin forma predefinita afisata de functia MsgBox. Se afiseaza un mesaj într-o boxa de dialog si se asteapta ca utilizatorul sa actioneze unul dintre butoanele existente (numarul si tipul lor lor este fixat la proiectarea aplicatiei). Functia returneaza un întreg indicând care buton a fost actionat. Sintaxa este
[intvariable=]MsgBox(prompt[, buttons] [, title] [, helpfile, context])
unde
prompt este textul mesajului (Vezi InputBox)
buttons este o expresie numerica egalacu suma valorilor care specifica numarul, tipul si atributele butoanelor. Aici se fixeaza si modalitatea ferestrei (Vezi constantele predefinite din tabelul care urmeaza). Valoarea implicita este 0.
title,helpfile, context identice cu argumentele similare descrise la InputBox.
Constantele recomandate pentru formarea argumentului buttons sunt
|
Valoare |
Descriere |
VbOKOnly |
Numai butonul OK |
|
VbOKCancel |
OK si Cancel |
|
VbAbortRetryIgnore |
Abort, Retry si Ignore |
|
VbYesNoCancel |
Yes, No si Cancel |
|
VbYesNo |
Yes si No |
|
VbRetryCancel |
Retry si Cancel |
|
VbCritical |
Icoana de Critical Message |
|
VbQuestion |
Icoana de Warning Query |
|
VbExclamation |
Icoana Warning Message |
|
VbInformation |
Icoana de Information Message |
|
VbDefaultButton1 |
Primul buton este cel implicit (echivalent cu Enter) |
|
VbDefaultButton2 |
Al doilea buton este cel implicit |
|
VbDefaultButton3 |
Al treilea buton este cel implicit |
|
VbDefaultButton4 |
Al patrulea buton este cel implicit |
|
VbApplicationModal |
Application modal: aplicatia curenta este oprita pâna când raspunde utilizatorul |
|
VbSystemModal |
System modal: toate aplicatiile sunt oprite pâna când utilizatorul raspunde la dialog |
Valorile 0-5 descriu butoanele, 16,32,48 si 64 descriu stilul icoanei afisate, 0, 256 si 512 determina butonul implicit, iar ultimul grup (0 si 4096) determina modalitatea boxei de dialog. La formarea argumentului Buttons se va aduna doar câte un numar din fiecare grup.
Pentru a utiliza valoarea returnata de functie, aceasta trebuie inclusa într-o expresie (eventual atribuita unei variabile întregi).
Valorile returnate de functie si care pot fi testate, în expresii logice, pentru a alege ramura de prelucrare dorita de utilizator sunt
|
Valoare |
Descriere |
VbOK |
OK |
|
VbCancel |
Cancel |
|
VbAbort |
Abort |
|
VbRetry |
Retry |
|
VbIgnore |
Ignore |
|
VbYes |
Yes |
|
VbNo |
No |
Actionarea tastei Esc este echivalenta cu actionarea butonului Cancel (daca acesta este prezent). Daca în dialog este prezent butonul Help, actionarea lui nu termina dialogul.
|