12.07.2015 Views

Dispensa ed Esercizi in Linguaggio Visual Basic - Teletu

Dispensa ed Esercizi in Linguaggio Visual Basic - Teletu

Dispensa ed Esercizi in Linguaggio Visual Basic - Teletu

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

un frame con caption “dati anagrafici”sette etichette con caption “codice” , “cognome” , “nome” ,…sette caselle di testo (text1, text2 ,… ) con proprieta’ text azzerataun controllo D A T A 1 impostandone le proprieta’ per collegarlo al databaseA N A GRA FE e alla tabella CI T T A D I N O ; tale controllo serve solo per def<strong>in</strong>ire ildatabase da utilizzare e puo’ restare nascosto durante l’esecuzione,impostandone la proprieta’ Visibile a Falsenove pulsanti di comando (“prec<strong>ed</strong>ente” , “successivo” , “primo” e “ultimo” per lanavigazione nel database; “nuovo” per aggiungere un record; “modifica” permodificare i dati; “cerca” per ricercare un record <strong>in</strong> base al cognome; “elim<strong>in</strong>a”per cancellare il record corrente” ; “esci” per term<strong>in</strong>are l’applicazione)N el def<strong>in</strong>ire la caption di ogni pulsante potete usare il simbolo & per def<strong>in</strong>ire i tasti di scelta rapida (v.progetto4); <strong>in</strong>oltre e’ sempre possibile def<strong>in</strong>ire una barra dei menu’ che consenta di svolgere le stesseoperazioni previste con i pulsanti.O ra associamo il codice VB; nella sezione “generale” dichiariamo le seguenti variabili:Dim CONT As Integer‘contatore che consente di controllare se il database ‘ vuoto o noDim TROVATO As Integer ‘deviatore che controlla se il record cercato esisteDim CERCA As Str<strong>in</strong>g‘variabile che conterra’ il cognome per la ricerca del recordLe operazioni di manipolazione sulla tabella (<strong>in</strong>serimento, modifica e cancellazione) sono rappresentat<strong>ed</strong>ai metodi A D D N EW, ED I T e D ELET E; <strong>in</strong>oltre le operazioni di <strong>in</strong>serimento e modifica devono seguit<strong>ed</strong>al metodo UP D A T E (<strong>ed</strong> e’ opportuno anche aggiornare il contenuto della tabella al controllo D A T A 1 conil metodo REFRESH); la navigazione tra i record viene realizzata con i metodi MO VEFI RST (primo),MO VELA ST (ultimo), MO VEN EX T (successivo) e MO VEP REVI O US (prec<strong>ed</strong>ente), prev<strong>ed</strong>endo opportunicontrolli q uando si e’ posizionati sul primo (BO F= beg<strong>in</strong>n<strong>in</strong>g of file) o ultimo record (EO F= end of file).A i controlli q u<strong>in</strong>di associamo il seguente codice:Private Sub F orm_Load()'all’esecuzione controlla che ci siano record <strong>in</strong> archivioData1 .RefreshCONT = 0If Not Data1 .Recordset.EOF ThenCONT = Data1 .Recordset.RecordCountEnd IfIf CONT = 0 ThenMsgBox "archivio vuoto"End IfEnd SubPrivate Sub Command1 _Click()'<strong>in</strong>serisce un nuovo recordData1 .Recordset.AddNew 'aggiunge un nuovo recordData1 .Recordset.Update 'registra il nuovo recordData1 .Recordset.MoveLast 'si posiziona sul record vuoto per aspetto dell’applicazione durante il fuunzionamentoEnd Sub ‘consentire l'<strong>in</strong>serimento deidatiPrivate Sub Command2_Click()'modifica un recordIf CONT = 0 ThenMsgBox "archivio vuoto, impossibile modificare"Else: MsgBox "posiz ionarsi sul record da modificare"Data1 .Recordset.Edit 'pr<strong>ed</strong>ispone per la scritturaData1 .Recordset.Update 'registra il recordEnd IfEnd SubPrivate Sub Command3 _Click()'ricerca seq uenziale <strong>in</strong> base al cognome32

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!