CATEGORII DOCUMENTE |
SIMPLIFICAREA UTILIZARII - CONTROALELOR
Posibilitatea utilizatorului de a aplica tehnica de tragere si de plasare
Cu ajutorul urmatoarelor proprietati , metode si evenimente , puteti specifica atat semnificatia unei operatii de tragere cu mouse-ul , precum si modul in care trebuie initiata operatia detragere pt. un anumit control.
PENTRU AFOLOSITI
Permite tragerea automata sau manuala a unui contrul Proprietatea DragMode
Indica pictograma afisata in timp ce controlul este Proprietatea DragIcon
tras cu mouse-ul.
Recunoaste momentul in care un control este plasat Evenimentul DragDrop
peste un obiect
Recunoaste momentul in care un control este tras Evenimentul DragOver
peste obiect
Porni sau opri tragerea manuala Metoda Drag
Toate controalele vizuale pot fi trase cu mouse-ul in timpul executiei si partajeaza proprietatile enumerate in tabela precedenta. Formularele recunosc evenimentele DragDrop si DragOver, dar nu au proprietatile DragMode si DragIcon.
`INTEROGARI
Comanda SELECT
Proiectarea vizuala a interogarilor simple si incrucisate
Fisiere View
Query Designer
Sub numele de interogare sau cerere sunt referite acele solicitari de date in mod direct fara indicarea de obtinere.
O cerere SQL se poate lansa din fereastra de comenzi sau din interiorul unui program FoxPro pentru ca ea functioneaza ca orice alta comanda dar se poate proiecta intr-un mod interactiv cu ajutorul utilitarului Query Designer.
Definirea interogarilor prin comanda SELECT
Comanda SELECT -SQL permite specificarea datelor care vor constitui iesirea din interogare precum si sursa acestora . Cum se vor obtine aceste date ramane in sarcina optimizatoruluide cereri Rushmore
Clauza ALL/DISTINCT determina prelucrarea tuturor inregistrarilor (ALL) sau numai a articolelor unice (DISTINCT).
Clauza <col1>[AS <nume 1>]…permite definirea coloanelor care vor constitui iesirea din interogare . Coloanele pot fi campuri apartinand tabelelor definite in clauza FROM ,constante ,expresii,functii utilizatori .Coloanele pot primi un alt nume prin clauza AS .
Pot fi utilizate functii cum sunt:
AVG(<exp>) calculeaza media aritmetica COUT(<art selectat>) numara selectiile,SUM (<art -selectat>) calaculeaza suma,MIN(<art-selectat>),MAX(<art -selectat) determina extremul.
Clauza FROM specifica listalista fisierelor de intrare in prelucrare.
Destinatia rezultatelor se specifica prin dour clause:INTO/TO dintre care INTO este prioritara.Clauza INTO <det_into> determina forma de stocare a datelor.<Dest_into> poate fi:ARRAY <tabluo>/CURSOR<fis>/DBF<fis.dbf>.Forma de stocare cursor este o tabela temporara ,de tip “READ ONLY”,stearsa automat in momentul inchiderii ei.Clauza TO <dest_to>se foloseste atunci cand lipseste clauza INTO.<Dest_into> poate fi :TO FILE <>fis.txt>[ADDITIVE]/TO PRINTER [PROMPT]/TO SCREEN unde TO FILE directioaneaza iesirea catra un fisier catre un fisier ASCII (fie prin suprascriere ,implicit,fie prin adugarea datelor la vechiul contin daca este prezenta cluza ADDTIVE),TO PRIN catre imprimanta,iar TO SCREEN catre ecran.
Exemplu:
1. Afisati elevii claselor la imptimanta. Select cls,nume from elevi to print
2. Copiati elevii intr-o alta baza da date. select cod,nume from elevi into dfb manelevi.dbf
Clauza WHERE <cond> permite introducerea legaturilor intre tabele si a filtrelor .Conditiile <cond> sugereaza sistemului FoxPro sa includa anumite inregistrari in rezultatele cererii.
Exemple:
Care sunt elevii cu medii intre 8si 10 din clasa select nume,med from elevi
A “12A”. where med between 8 and 10 and cls =”12A”
Care sunt elevii cu media 10 precum si numele select elevi.nume,elevi.cls,
Dirigintilor lor .Care sunt elevii dirigintelui X?clase.diriginte from elevi,clase
Where elevi.cls=clase.cls and elevi.med=10
Accept ‘nume professor diriginte?; to x
Select elevi .nume,elevi.med from elevi,
Clase where clase.cls=elevi.cls;
And clase.diriginte=x
Clauza GROUP BY <lista_camp> permite gruparea rezultatelor dupq lista de campuri
Clauza HAVING <cond> permite introducerea unor restrictii de afisare a grupului
Cluza ORDER BY <Mexp-ordo> “ASC/DESC” permite specificarea expresiei de ordonare ca si sensul ordonarii.
Proiectarea vizuala a interogarilor
O interogare este o maodalitate de combinare adatelor provenind din mai multe surse care sa serveasca la realizarea rapoartelor ,formularelor.Aceste date doar se vad nu se pot modifica.Sunt mai multe tipuri de interogari:
Simple sau unidimensionale
Incrucisate sau bidimensionale
Tridimensionale
a.Proiectarea interogarilor cu Query Designer
Queriy Designer , numit generatorul de interogari , reprezinta o interfata pentru realizarea interactivaa cererilor Select SQL.
Desi pentru intrebuintarea sa Queri Designer cere sa fim oarecum familiarizati cu modul de lucru FOX, nu este nevoie sa cunoastem limbajul SQL. Acest utilitar poate fi chiar o modalitate de a invata limbajul SQL fiindca prin butonul SEE SQL se poate vedea instructiunea SELECT generata conform proiectului din ecranul utilitarului. Aplicatia este o facilitate deosebita oferita utilizatorilor de a-si organiza direct mediul de lucru, de a indica legaturile dintre fisiere, indecsii, ca si campurile sau expresiile dorite ca rezultat al cererii. Dar
-nu putem folosi QUERY DESIGN in aplicatiile executabile direct.
-sistemul trebuie sa faca fata la o supraincarcare considerabila a memoriei .
-trebuie lucrat direct cu numele de baze de date, campuri; nu dispune de nici un dictionar de date.
Crearea unui fisier de cereri se face interactiv prin deschiderea ecranului de proiectare QUERY DESIGN din meniul File-New-Query sau prin comanda CREATE/MODIFY QUERY . Se va crea un fisier cu extensia(.qpr) pe care il vom numi fisier de cereri si care va putea fi executat tot prin comanda DO (fis qpr) .
Pasul1 vom apela generatorul de interogari prin FILE -NEW-QUERY-NEW sau prin comanda Create Query.
Se deschide o fereastra de proiectare cu mai multe parti si un meniu .
Meniul Query
Meniul contextual se deschide, asa cum stim , prin butonul drept al mouse-ului si contine cateva actiuni legate de Query cum ar fi: executie(run), adaugarea unei tabele(add table), stergerea unei tabele (remove table) , vizualizearea comenzi Select(view SQL), deschiderea ferestrei cu butoane pentru alegrerea destinatiei Qyery(output setting)
Pasul 2. In fereastra de proiectare a interogarii vom deschide tabelele . Tabelele, incluse sau nu intr-o baza de date , trebuie deschise pe rand in aceasta fereastra folosind fie meniul contextual fie meniul princcccippal Qyery.
Deci vom deschide fisierele Contracte si Facturi. Pentru ca legatura dintre ele era definite la nivelul bazei de date observam conservarea ei. Legatura este Contracte-Facturi de tip 1-n
Atentie-Daca dorim sa afisam structura sau datele dintr-un fisier deja trecut in fereastra de proiectare , vom plasa cursorul pe titlul tabelei in meniul View aparand optiunea Browse care, asa cum stim , asociaza si meniul Table folosit pentru modificare indexarefiltrare.
Pasul 3.Vom fixa coloanele rezultat ale cererii in tab-ul Fields prin mutarea campului selectat din fereastra Available Fields sau a expresiei functiei construite cu generatorul de expresii in fereastra Functions , in fereastra Select fields.
Pentru ca in dorim sa se afiseze nr. De facturi (gruparea pe contracte o vom defini mai tarziu ) vom alege una dintre functiile numerice : COUNT ( facturi . nr_fact.) . Pentru valoarea contractului vom defini expresia contracre. can+ contracte . prêt_promis. Pentru facturata putem scrie SUM (facturi , cant+facturi . prêt) AS val-facturata atribuind un nume coloanei.
In general pentru grupuri se pot folosi functiile urmatoare:
COUNT() -numara inregistrarilegrupului.
SUM(…) - insumeaza valorile pentru toate inregistrarile grupului.
AVG(…) - calculeaza media valorilor articolelor din grup.
MIN(…) - extrage valoarea minima a expresiei din grup .ul query-clue se face prin caseta Number f
MAX(…) - extrage valoarea maxima din grup .
COUNT(DISTINCT) - numara aparitiile grupului .
SUM (DISTINCT) - insumeaza valorile pentru articolele distincte etc.
Pasul 4. Vom fixa conditia de legatura prin tab-ul Join.
Tipuri de legaturi:
INNER JOIN-numai articole commune care satisfac crtiteriul
LEFT OUTER JOIN-toate inregistrarile din tabela din stanga si cele care satisfac criteriul din drapta
RIGHT OUTER JOIN-toate articolele dindreapta reklatiei si numai care satisfac criteriul din tabela din stanga
FULL JOIN -toate articoleledin ambele tabele
Pasul 5.Vom fixa conditia de filtrare prin tab-ul Filter.
Pasul 6.Vom fixa campurile de ordonare prin tabul Order.
Pasul 7.Vom specifica grupul prin Group By.Calculele se fac prin functiile:AVG,COUNT ,MAX,MIN,SUM.
Pasul 8. Vom fixa alte conditii ale interogarii prin tabul Miscellaneous
No duplicates
Cross tabulate
Stabilirea unui numar sau procent de vizualizare din rezultatul query-lui se face prin caseta Number of records sau comutatorul Percent.Pasul 8.vom vizualiza comanda SELECT generata de Query Designer fie prin meniul principal sau contextual fie prin butonul de pe toolbar cu caleasi nume view sql.pasul
Pasul 9.Vom allege destinatia finala a rezulatatelor interogarii prin meniul principal ,prin toolbar sau din meniul contextual.
Ecranul |Query destination permitre alegerea dintre:
a) browse-afisare in fereastra browse
b) cursor-afiasre intr-o tabela temporara
c) table/dbf-nformatiile sunt scrise intr-o tabela
d) garph-reprezentari grafice
e) screen-datele sunt afisate pe ecran
f) report-afisrea sub forma de raport
g) label-afiasrea sub forma unei etichete
Pasul 10.vom verifica modul de construire prin butonul run observand rezulatele din fereastra browse
Pasul 11. Vom salva si vom inchide generatorul query designer
Pasul 12.vom lansa in executie prin comanda DO fis.qpr.
b. Proiectarea rapida a interogarilor cu Query Wisard
pentru proiecterea rapida a interogarilor dispunem de asistentul Query wisrd apela t din Tools-wisard-query.In fereastra de dialog deschisa vom allege query wizard
Pasul 1. selectarea campurilor care vor forma iesirea dorita din interogare .
Pasul 2.Daca sunt mai multe tebele se cere specificarea relatiei.
Pasul 4.Se fixeaza campurile de ordonare.
Pasul 5. Se salveaza ca fisier .Qpr.
c. Poiectarea interogarilor incrucisate cu Cross Tab wizard
O incrucisare sete rezultat unei interogari speciale care permite analizarea relatiei dintre un camp al tabelei de date si alt camp al aceluias table.
Proiecatrea fisierelor View
Spre deosebire de interogari vederile ,perspectivele sau imaginile sunt fisiere care se pot modifica si transmit aceste corectii tabeleor sursa din care sunt create.Pespectivele sunt de dour tipuri:locale sau la distanta
a. Proiectarea fisierelor vedere prin View Designer
Apelul utilitarului pentru crearea unui view sw face fie direct prin meniul system file -New-View fie prin tastarea comenzii CREATE VIEW in fereastra de comenzi
Trebiue stiut ca :
Un camp cheie nu pote fi modificat
Se pot modiifca doar campurile marcate pentru aceasta operatie
Schimbarea setarii initiale a indicatorilor asociatia cooaneleor view-ului se face prin pozitioanrea pe numele campului si selectarea comutatorului corespunzator
comutatorul Send SQL Updates care trebiue activat pentru a se putea folosi view-ul la actaulizarea datelor din surse
partea dreapta a ferestrei update se foloseste pentru view0uri la distanta si o vom discuta la lectia uarmatoare.
B.Proiectarea rapida a vederilor cu Local View Wizard
Pentru localizarea rapida a unei vederi se poate folosi asistentul Lacl View wizard prin Tools-wizard -Query-local wiev.Utilitarul parcurge de fapt aceleasietape ce si vrajitorul pentru interogari insa in loc sa salveze rezultatul intr-un fisier de interogare il salveaza in definitia unei vederi in baza de date deschisa .Asistentul realizeaza de fapt o vedere care nu este actualizabila.
Proiectarea interogarilor cu exteriorul aplicatiei
Accesarea datelor situate le distanta ,View Designer ,Remote View Wizard
Publicarea datelor pe internet ;Web Publishing Wizard
Proiectarea documentelor pentru E-mail
Prooiectarea fisierelor perspectiva cu date situate la distanta
Pasi:
1. Stabilirea unei conexiuni la distanta cu alta baza de date ,se realizeaza astfel:se deschide aplicatia Control Panel si se selecteaza pictograma ODBC pentru a vedea ce surse de date sunt disponibile
2. se deschide FoxPro.
3. se deschide o baza de date
4. se apeleaza File-New-Connectivity
5. se apeleaza generatorul de vederi prin File-New-remote view-new
6. se adauga tabelele necesare din baza de date
7. se dauga criteriile de selectie prin tab-ul join
8. se filtreaza ,se stabileste ordinea ,gruparea ,criteriile de catualizare la fel ca si in cazul unei vederi locale
9. se precizeaza conditiile de acceptare a actalizarilor prin update criteri
Por exista anumite conflicte de cataulizrea tinand cont ca in conditiile existentei mai multor utilizatori acceasi tabela poate fi solicitata la atualizare simultan de la mai multe statii.Clauzele SQL WHERE ne ajuta in aceasta privinta:
key fields only-se efectueaza actualizarile atata vreme cat campul cheie al tablei sursa nu s-a modificat
key and uptable fields-interzice atualizarea atunci cand oricare dintre campurile marcate pentru actualizare si-a schimbat valoarea in tabela de la distanta
key and modified fields- interzice actualizarea daca pentru un camp a carui valoare s-a modificat local valoarea acestuia secshimbase si in tabela sursa
key and timestamp-interzice atualizarea daca valoarea cheii sau a amrcii temporare a fosta modificata in tabela initiala
Proiectarea rapida a vederilor cu Remote View Wizard
Pentru realizarea unei vederi cu surse de date diferite de cele ale lui Visual Fox sepoate folosi si instrumentul Remote View Wizard care desfasoara aceleasi ferestre de dialog ca si local view wizard cu exceptia primului pas cand se indica legatura cu sursa externa
Proiectarea paginilor web pentru vizualizarea datelor pe internet
Vom folosi utilitarul webpublishing wizard apelat din meniul tools-wizards-webpublishing
Pasul1 se seklecteaza baza de date sau tabela ale carei informatiii se pot vizualiza pe internet
Pasul 2.Se precizeaza ordinea de afisare a datelor prin indicarea a maxim 3 campuri de sortare si a sensuui operatiei
Pasul 3. se seteaza caracteristicile de design ale paginii web
Pasul 4 Se salveaza documentul.
Proiectarea paginilor de cautare pe internet
Pasul 1. Se selecteaza tabela sau baza de date in care se vor cauta datele
Pasul 2.Se precizeaza indexul dupa care se face cautarea pasul 3>se introduc textele pentru titlul paginii
Pasul 4.Se introduce o imagine de fundal si o imagine de anteta paginii
Pasul 5.Se precizeaza imaginile de fundal si antet pentru pagina rezultat al cautarii .
Pasul 6.se selecteaza campurile care se vor include in pagina de rezultate nr max=5
Proiectarea de documente si transmiterea lor prin e-mail .Utilitarul mail merge wizard
Pasul 1.Vom selecta campurile din tabela Agenda:numele si adresa de e-mail
Pasul2.Vom indica procesorul de texte pentru editarea scrisorii
Pasul 3.Vom selecta optiunea de creare adocumentului
Pasul 4 Vom allege form letter ca tip de document
Afisarea datelor sub forma de rapoarte
rapoarte.Generatorul de rapoarte Report Designer
Etichete .Generatorul de etichete Label Designer
Grafice.Utilitarul GENGRAPH
Rapoarte
In practica se disting mai multe tipuri de rapoarte:
Dupa aria de cuprindere si locul de optinere sunt rapoarte de uz local sau uz global
Dupa gradul de prelucrare a datelor pot fi rapoarte analitice sau sintetice
Dupa perioadele de referinta a continutului informational sunt rapoarte zilnice ,decadale,lunare
Dupa natura informatiilor oferite pot fi rapoarte sub forma tabelara sau grafica
Editarea unui raport presupune o anumita succesiune de operatii:
1. definirea continutului informational al raportului
2. colectarea datelor care compun raportul
3. efectuearea calculelor matematice
4. definirea machetei raportului este o operatie complexa de definire a formei de prezentare si explicitare a informatiilor intr-un cadru limitat-pagina sau ecranul -tinand seama de cerintele utilizatorilor.
Principalele categorii de informatii sunt:
datele propriu-zise ale raportului
indicatori totalizati pe diverse nivele de centralizare
capul de table
titlul raportului
datele sau nivelele de grupare si totalizare
informatii centralizatoare de sfarsit de rapor /pagina
5 stabilirea modalitatilor de afisare
Editorul de rapoarte Report Designer
Generatorul de rapoarte permite:
1. Proiectarea unui raport simplu ,in care apare data curenta a listarii
2. Proiectarea unui raport cokplex prin indicarea in cadrul unor benzi speciale a componenetelor raportului
3. Sepot introduce benzi de grup
4. raportul poate contine functii standard
Util;izarea grupurilor
Indicatii:
1. Se deschide baza de date CONTRACTE si se indexeaza dupa nume_benef
2. se apeleaza optiunea report-data grouping
Se stabilesc proprietatile grupului :
start group on new column
start each group on a new page
reset page number to 1 for each group
reprint group header on each page
start group on a new page when than
3. se re vine la ecranul de proiectare si se completeaza obiectele camp pe benzi corespunzatoare
4. se vizualizeaza
5. se salveaza
6. se ruleaza cu comanda report form x
folosirea rapoartelor pantru mai multe tabele
1. se deschid tabelele in baza de date Contracte si se stabileste o legatura 1-n intre contracte si facturi
2. se va intra in proiectaare cu crate report sau file-new-report
3. se deschide meniul de date data environment si se aduga tabelele contracte si facturi
4. se vor deschide banzile de titlu si insumare
5. se vor plasa informatiile pe benzi alegand fisierul corespunzator
6. se va salva si se val lansa in executie prin run /report
folosirea raportului cu functii utilizator
Pasi :
1. se deschide baza de date in data environment
2. se deschide ecranul de proiectare a raportului si se grupeaza dupa nr_contracte
3. pe banda de detaliu la nivelul grupului se trec atat textele explicative cat si campurile din fisierul contracte
4. se va crea variabila m.varfunct in stanga zonei proiectate si vom fixa comutatorul stretch pentru aceasta
5. se salveaza raportul
6. se scrie programul de apel care va avea si functia utilizator contr()
7. se executa programul cu DO apel _fff
Proiectarea etichetelor cu Label Designer
Rezolvare:
se deschide fisierul contracte se indexeaza unic dupa nume_benef
se allege forma de eticheta din formele predefinite afiaste la deschiderea generatorului
se vizulizeaza prin report/preview
se salveaza file -save
Asistentul Label Wizard
Pasul 1.selectarea tabelei sursa
Pasul 2.selectarea formei eticheteidin cele prestabilite.
Pasul 3.permite construirea machetei etichetei din indicarea continutului
Pasul 4. ordonarea datelor
Pasul 5. salvarea etichetei si sau modificarea acesteia
GRAFICE
Rezolvare
1 vom folosi generatorul de interogari pentru a totaliza tabela Contracte pe campul nume_benef cu filtrare pe produsul 'pantofi'. Vom obtine in coloana Cant totalul cantitatilor contractate pe beneficiari.
2.vom deschide utilitarul prin Tools-Wizard-All-Graph.
Pasul1se deschide tabela de date pe care dorim s-o folosim pentru grafic (Contracte).
Pasul.2. Se fixeaza axele.Pentru o axa OY trebuie un camp numeric si vom trece Cant.
Pasul 3 Se alege forma graficului.
Pasul 4 Se poate opta pt. salvarea graficului ca tabel.
Proiectarea meniurilor
Generatorul de meniuri Menu Builder
Menuil reprezinta un element de interfata indispensabil unui proiect informatic profesional.Este un ansamblu de optiuni pus la dispozitioa utilizatorului.
Genreatorul de meniuri Menu Buider
Crearea meniurilor utilizator se poate face mai usor si mai repede prin utilitarul numit Generatorul de meniuri Menu Builder.
Pentru optiune se fixeaza cateva caracteristici (Option)cum ar fi :
Tasta directa de selectie in Shortcut;
Mesajul explicativ pe linia de stare la selectarea optiunii(message);
Conditia ca optiunea sa fie sarita (Skip for),
Alte comentarii pentru proiectant(comment)
Cateva amanunte despre optiunea Quick Menu
La apelarea genreatorului se poate alege aceasta optiune din meniul Menu care se adauga meniului sistem.Se definesc optineile menuilui principal:
1 se tasteaza tsxtul in zona Prompt
2 se alege actiunea dorita in cazul selectarii optiunii din lista inchisa Rezult
Butonuol Create deschide o fereastra de dialog in care se pot defini optiunile submeniului in acelasi mod ca la meniul principal sau se scriu comenzile procedurii apelate.
Butonul Edit deschide ecranul pt. modificare.
La ultima optiune de iesire din meniul bara se poate pune comanda SET SYSMENU TO DEFAULT.
Se fixeaza procedurile de deschidere a fisierelor ,asocierea indecsilor , stabilirea relatiilor in Setup , procedurile de inchiere Cleanup
Se specifica zona unde va fi plasat meniul creat
Pentru optiunile de afisare se pot folosi proiectele de raport realizate in lectiile anterioare sau se pot crea rapid altele.
Se genereaza programul sub numele X.mpr.
Se ruleaza prin comanda do X.mpr.
Elementele de programare orientata spre obiecte
Clase , obiecte , evenimente si metode
Comenzi pentru definirea claselor
Clase,Obiecte , Evenimente , Metode
Obiectele recunosc si raspund la anumite actiuni numite evenimente.
Pentru obiectul fereastra se pot fixa urmatoarele evenimente
apasarea butonului mouse pe titlu pentru a muta fereastra
selectarea ferestrei
deselectarea ferestrei
Proprietatile definitorii ale claselor
Incapsulare-se includ la un loc atat proprietatile cat si metodele in definitia unei clase
Clase derivate -se permite crearea de subclase sau derivate
Mostenire -proprietatile clasei de baza nu vor mai trebui sa fie definite in clasa derivata.
Comenzile FoxPro
1Definirea unei clase se face prin comanda:
DEFINIRE CLASS <clasa > AS <parinte> <nume-obiect>AS<clasa >}
ENDDEFINE
2Crearea unui obiect (instantiere) se face prin CREATEOBJECT:
<nume-obiect>=CREATEOBJECT(<nume-clasa>)
3Afisarea listei complete a acestora :
DISPLAY OBJECT
4Eliberarea obiectelor : RELEASE<nume-obiecte>
5Comanda de activare READ EVENTS
6Comanda de oprire CLEAR EVENTS
Proiectarea formularelor
formulare, machete ecran sau video - formate
generatorul de machete
ce este un formular?
principii in proiectarea formularelor
Cateva principii trebuie avute in vedere la proiectarea interfetelor utilizator deci:
prezentarea tuturor informatilor de care este utilizatorul are nevoie trebuie sa se faca intr-o maniera intuitiva.
meniurile si obiectele de interfata sa fie grupate logic, pe categorii.
autodocumentarea fiecarei actiuni, optiuni.
folosirea standardelor
pt. cazurile de eroare este indicata avertizarea sonora
mesajul de operatie ilegala trebuie particularizat precizandu-se unde si ce s-a gresit.
deoarece in manierea procesarii conduse de evenimente a aplicatiei sunt deschise simultan pe ecran mai multe ferestre, este important ca fiecare mesaj sau fereastra de dialog sa aiba referire la fereastra sau procesul care a cauzat interventia.
este bine sa fie lasat utilizatorul sa stabileasca propria lui configuratie a mediului de lucru
pt. cazurile de stergeri accidentale sau deteriorarea informatilor este recomandata plasarea operatiei intr-un loc mai deificil de ajuns, fara tasta directa
generatorul de machete ecran - FORM DESIGNER
Utilitarul de proiectare a machetelor ectan dispune de urmatoarele elemente de interfata cu utilizatorul:
1 Fereastra de proiectare propriu -zisa.
2. Fereastra de proprietati (Properties)care afiseaza atat obiectele continute de macheta cat si proprietatile si medodele acestora;
3. un nou meniu pe linia principala -Form si optiuni specifice in meniul View;
4. Meniuri contextuale la nivelul fiecarui obiect cu care lucreaza generatorul de machete
5. Fereastra Datqa Environment- pentru baza de date si tabelele care vor fi folosite in macheta;
6. Baze de butoane ToolsBar pt. includerea obiectelor de control
7. Ferestre pentru coduri (Code) pentru editarea procedurilor atasate.
Meniul From
Contine:
Bara de butoane Form Designer
Data Environment
Proprietati si metode uzuale pentru formulare
Name -specifica numele formulatorului
Top, Left,Width,Height-pentru pozitie si dimensiune ; sunt deja cunoscute
WindowsType- specifica modul de rulare a unui formular :in regim protejat sau concurential.
Caption- da titlul ferestrei ;
AutoCenter- plasarea automata in centrul ecranului;
Closable,Movable,MaxButton,MiniButton,ControlBox pe valoarea .T.
Load - este apelata imediat dupa crearea formularului si poate contine comenzi de deschidere a unor tabele sau de initializare a unor variabile.
Init- este apelatala crearea formularuluii
Destroy - este apelata la eliminarea formularului de pe ecran ;
Unload- este apelata la distrugerea obiectului dim memorie ; este ultima metoda;
Show - vizualizarea pe ecran, Hide - ascunderea.
Activate - activarea unei ferestre, se face atunci cand se pozitioneaza cursorul pe un obiect al acesteia (devine activ)
GotFocus - evenimentul prin care fereastra primeste controlul , devine activa.
Proiectarea rapida a unui formular prin Quick Form
Fereastra de dialog Form Builder are 2 tab-uri:
1.Field selection
2 Style
In concluzie sau cum se lunreaza cu un formular:
1 Pima etapa consta in apelarea utilitarului de proiectare
2 Se definesc proprietatile si metodeele formularului.
3. Se deschide bara de date.
4 se inclub obiectele de control
5 Se leaga aceste obiecte
6 Se vreifica functionarea formularului prin butonul Run
7 Se revine in proiecatre prin butonul Modiy
8 Atunci cand se hotaraste ca formularul functioneaza corect se salveaza
9 Se lanseaza in executie prin comanda Do Form
10 Formularul poate primi valori din exterior
Obiecte de control sau de interfata
Operati generale cu obiectele de control
Selectarea obiectului - de fac3e prin clic cu mouse-ul popzitionat pe suprafata obiectului.
Selectarea mai multor obiecte- se face prin butonul de selectare de pe bara utiliatra si drag&drop pe suprafata tuturor obiectelor
Mutarea obiectului(sau a grupului) selectat se face prin drag&drop la noua pozitie sau prin Cilpboard cu operatiile Cut si Edit - Paste.
Redimensionarea unui obiect selectat se face prin pozitionarea cursorului pe o margine a obiectului
Copierea unui obiect se realizeaza prin operatiile Cory si Paste din Edit
Stergerea unui obiect selectat se face prin tasta Delete
Dispunerea obiectelor pe formular se face dupa dorinta utilizatorului
Stabilirea fontului si culorii se face pentru obiectele care afiseaza text prin proprietatile FontName si FontSize
Obiectele geafice pot fi :
1 de tip container- care contin alte obiecte
2 de tip controller- care nu pot fi parinti
Proprietati si metode generale ale obiectelor de interfata
Name - specifica numele obiectului
Top, Feft,Width,Height-pentru pozitie si dimensiune
Caption- da titlul obiectului;
AutoCenter-plasarea automata in centrul ecranului
Show-vizualizarea pe ecran
Hide - ascunderea obiectului
Active - metoda :atunci cand se pozitioneaza cursorul pe obiect
Deactivate- metoda :atunci cand se preda controlul asupra altui obiect
GotFocus- evenimentul prin care obiectul primeste controlul , devine activa.
LostFocus - este evenimentul de pierdere a controlului de catre obiect
SetFocus - este evenimentul de fixare a controlului catre un anumit obiect
Proiectarea vizuala a obiectelor de interfata
a) Texte explicative sau mesaje. obiecte Label
b)Campuri de editare . obiecte TextBox
Metode specifice
Valid se foloseste atunci cand s-a terminat introducerea unei valori in camp si se doreste specificarea operatiei urmatoare
When- se foloseste inainte ca obiectul sa devina tinta intrarilor
KeyPress- este o activitate de schimbare imediata a valorii unui alt obiect chiar in timpul introducerii datelor in obiectul curent
c)Zone de editare . Obiecte EditBox
Proprietati specifice:
AllowTabs - se permite introducerea caracterului Tab in text
ReadOnly- permite doar vizualizarea textului
Ca si pentru Text Box Builder se va raspunde la intrebari grupate pe 3 tab-uri:
1 Format - pentru optiunile de formatare a textului
2 Style - pentru efectele vizuale ale obiectului
3 Value- unde va fi depus textul dupa editare
d)Comutatoare. obiecte CheckBox
Proprietati:
Autosize=permite ca obiectul sase autodimensioneze in functie de textul introdus ca valoare a proprietati
Caption va fi , de fapt, textul explicativ
Enabled= permite activarea obiectului
ControlSource- numele variabilei sau al campului unde se va realiza citirea
e)Declansatoare . Obiecte CommandButton si CommandGroup
Proprietati mai importante:
Caption -textul afisat pe buton
WordWrap= permite continuarea textului pe linia urmatoare ;
Autosize-determina o autodimensionare
Picture - permite afisarea unui fisier imagine
cancel - pe valoarea t anunta ca obiectul este declansator de iesire
Default- pe valoarea t anunta un declansator implicit la tasta Enter
Proprietati pentru un gru0p de butoane:
Value-numarul de butonului care a fost selectat din grup
ButtonCount da numarul de butoane
f)Butoane radio. Obiecte Obiecte optionButton si OptionGroup
Autosize
Caption
Proprietai la nivelul de grup
ButtonCunnt- numarul de butoane
ControlSource- variabila sau capul unde se va memora
Value- buntnul radio care da valoare implicita grupulu
g)Contoare.Obiecte Spinner
Contoarele sunt campuri de editare a valorilor numerice cu verificarea apartenentei la un interval Crestearea sau scaderea valorii se face prin mouse pe butoanele corespunzatoare si atunci va fi fixata valoarea cea mai mare pe care poate sa o ia controlul si cea mai mica.
h)Liste.Obiecte ListBox ComboBox
Listele deschise sunt obiecte care se proiecteaza prin butonul
ListBox din bara utilitarului FormDesigner
Proprietati :
Elementul selectat este memorat in campul pe care il asociem proprietatii ControlSource.
Sorted=t..da posibilitatea sortarii alfabetice a elementelor listei la afisare .
IncrementalSeach=t..eset o facilitate deosebita pentru cautarea asistata in listele mari
De obicei se selecteaza un singur element dintr-o lista
i)Grile.Obiecte Grid
Grilele sunt obiecte de interfata tip container care se proiecteaza prin butonul de pe bara utilitara Form Controls Toolbar urmat de trasarea zonei ocupate de obiect pe suprafata machetei.
Proprietati si metode :
Referirea la o componenta a grilei se face folosind calificareanumarul de conloane ale unei grile eset dat de proprietatea Co lumncount
RowSource Type
Pentru a indica sursa de date a unei coloane se foloseste proprietatea controlsource cu numele campului precedat de aliasOperatii cu datele unui grid :
j)Set de Pagini.Obiecte Page Frame
Paginile si seturile de pagini sunt elemente de ineterfata carea sigura pe de-o parte centralizarea informatiilor in acelasi formular si sitematizarea lor pe pegini distincte.
La niveleul setuli de formulare se definesc :
numarul de pagini-se foloseste proprietatea pagecount
dimensiune paginilor-pageheight si pagewidth
modul de afisare a titlurilor de pagina tabstretch=0
caption-de textul explicativ la nivelul paginii
active page-fixeaza pagina activa
pageorder-fixeaza numarul de ordine al paginii
k)Imgini.Obiecte Image
formularele de culegere a datelor sau de vizualizare sunt mai atractive daca au anumite desene ,imagini,sigle.
Proprietati :
picture-specifica numele fisierului
borderstyle=1:imaginea este incadrata in chener si …=2.:contrar
stretch-fixeaza modul de faisare a imaginii si poate lua valori le :=0 clip
=1 isometric
=2 stretch
printre evenimente se pot enumera click ,drag
l)Ceas.Obiecte timer
Ceasul ca obiect de interfata permite masurarea intervalelor de timp la care trebuie savarsita o anumita actiune.
Proprietati :
interval-fixeaza intervalul de timp intre doua evenimente timer in miimi de secunda
m)Obiecte de tip OLE
Tehnica OLE este deja cunoscuta din lectiile anterioare de programare a aplicatiilor windows ;ea permite interactionarea aplicatiilor windows prin intermediul obiectelor suportate de acestea.
Proprietati :
autoactive-specifica modul de activare a obiectului
=0 manual
=1 gotfocus
=2 doubleclic
=3 automatic
n)Bare utilitare.Obiecte ToolBar
Un obiect de interfata care permite executarea rapida a unor optiuni este bara utilitara cu declansatoare care se plaseaza pe liniile extreme ale ferestrei foxpro
Proprietati:
daca dorim ca la proiectare sa definim locul barei se foloseste proprietatea dock=-1-bara nu este ancorata,…=0-ancora la marginea superioara a ferestrei apliactiei …=1-ancora la stnga ,…=2-ancora la dreapta,…=3-ancora jos
inlegatura cu ancorarea se pot defini metode asociate evenimentelor beforedock-inaintea ancorarii,afterdock-dupa ancorare
o)Linii,chenere,cercuri,elipse.Obiecte Line si Shape
Proprietati pentru linii :
bordercolor-culoarea
borderstyle-modul de desenare
borderwidth-grosimea in pixeli
lineslant-orientarea
specialeffect=1 da un aspect tridimensional
fillstyle-stilul obiectului …=1 transparent ,…2 opac
fillcolor-culoarea de umplere
bordercolor-culoarea marginii
curvature-gradul de rotunjire
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 56
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved