Comporre un progetto Visual Basic

Torna alla pagina CONTROLLO

Lo scopo di questa pagina è illustrare come si imposta e sviluppa un progetto software. Per i nostri scopi può andare benissimo un pc datato, magari finito in soffitta. Non serve assolutamente un computer con le prestazioni stratosferiche di quelli dell’ultima generazione. Basta che sia dotato di una porta seriale e di sistema operativo tra quelli Microsoft a partire da Windows ’95 in poi. Il linguaggio di sviluppo scelto è pure datato, ma molto diffuso e di facile apprendimento. Si propone pertanto Microsoft Visual Basic. Si consiglia di impiegare la versione 6.0 sp6, ma per i nostri scopi va benissimo anche una delle precedenti a partire dalla 4.0. Trovate in rete diversi tutorial di Visual Basic. Fate riferimento ad essi come compendio a queste note necessariamente sommarie. VB.net, più potente e recente, invece richiede una conoscenza dell’architettura del framework .net che esula dagli scopi di queste note.

Scarica qui il progetto di esempio (ProgettoBase.zip).

In ogni caso, indipendentemente dal linguaggio di programmazione e dal sistema operativo proposti, l’importante è comprendere le logiche che sono state impiegate ed eventualmente tradurle con i linguaggi e gli ambienti che avete a disposizione


Un primo progetto campione

In gergo VB ogni programma che generiamo è definito come progetto. Abbiamo battezzato il primo progetto che proponiamo con il nome di ProgettoBase. Con esso digiteremo in una scheda elementare un valore in un campo testo e, tramite un bottone di comando, presenteremo come risultato il doppio del valore digitato. Quando avviamo Visual Basic, ci è chiesto cosa vogliamo fare; nel nostro caso vogliamo produrre un nuovo progetto selezionando dal menù File la voce Nuovo progetto e a questo punto si apre una finestra di dialogo nella quale selezioniamo la prima voce EXE standard:

Nella parte centrale dello schermo compare un tipico componente, cioè una scheda (form), l’oggetto principale del progetto che stiamo realizzando:

Come si può notare, i nomi che Visual Basic assegna sono temporanei e spetta a noi assegnare i nomi corretti o mantenere quelli proposti. Cambiamo il nome alla scheda principale del programma; potremmo assegnare qualunque nome, non ci sono regole restrittive. Però, per poter programmare con ordine, occorre assegnare nomi con criterio; la scheda principale assume così il nome frmMain (il prefisso frm sta per ‘form’ e il suffisso ‘Main’, che significa principale, ha la prima lettera maiuscola) e per assegnarlo occorre portarsi sull’oggetto, selezionare le proprietà (con il bottone funzionale F4 o con la selezione dal menù a tendina che si apre con il click del tasto destro del mouse) e scriverlo in corrispondenza della voce (Name):

Assegniamo anche il titolo della scheda frmMain alla proprietà ‘Caption’; il titolo che vogliamo vedere comparire in alto alla scheda è ‘Progetto Base’. Chiudiamo le proprietà della scheda e andiamo al Menù File e selezioniamo la voce Salva Form1 con nome….  Visual Basic (VB) propone una directory dove salvare l’oggetto form appena rinominato; scriviamo il nome fisico del file che conterrà la form mantenendo per comodità il nome scelto; VB aggiungerà l’estensione tipica frm e abbiamo così salvato la scheda come un file qualsisasi caratterizzato dal nome frmMain.frm.   Vogliamo ora assegnare il nome al progetto e per fare questo occorre visualizzare la Gestione Progetti, una finestra che presenta gli oggetti che compongono il progetto che stiamo creando; il comando CTRL-R (cioè la combinazione dei tasti Ctrl e ‘R’) attiva questa finestra e la pone sulla destra dello schermo:

Si può notare che al progetto appartiene già la form che abbiamo rinominato in precedenza. Con il bottone destro del mouse si seleziona l’oggetto Progetto1 e dal menù a tendina che ne discende selezioniamo le Proprietà:

Diamo al progetto il nome ProgettoBase e con il comando Ok chiudiamo la scheda. Si noti che lo startup object vale frmMaim; questo significa che all’avvio il nostro programma mostrerà proprio questa scheda. Salviamo ora il progetto attivando dal menù File la voce Salva progetto con nome…; similmente a quanto abbiamo visto per il caso della form, diamo un nome fisico coerente con il nome che abbiamo assegnato; VB vi aggiunge la propria estensione automatica vbp (che sta per Visual Basic Project)  e otteniamo il file ProgettoBase.vbp.


Bottoni e controlli

Occorre prendere confidenza con la nomenclatura in uso in ambito di programmazione. Tutti gli oggetti che collocheremo sulla scheda si chiamano ‘controlli’. Per il nostro scopo occorrono i seguenti tre controlli: 

  1. un campo testo, dove introdurre il valore di partenza e dove mostrare il risultato del calcolo di raddoppio;
  2. un bottone di comando per calcolare il doppio;
  3. un bottone di comando per chiudere la scheda e terminare l’esecuzione del programma.

Il primo controllo che inseriamo è allora un campo testo. Per fare questo si trascina il simbolo di campo testo (situato nella barra degli strumenti) sulla form:

Passiamo allora all’inserimento dei due bottoni di comando:

Come per tutti gli oggetti che compongono il progetto, VB assegna un suo nome temporaneo, in questo caso ai controlli inseriti, nell’ordine Text1, Command1 e Command2. Modifichiamo le proprietà di questi controlli. Per quanto riguarda il campo testo, poniamo:

E assegniamo anche il valore ‘0’ come valore proposto all’avvio del programma:

Per quanto riguarda il primo dei due bottoni di comando modificheremo così le sue proprietà:

Per il secondo modificheremo così le sue proprietà:


Eventi

Cosa capita usando il programma quando andrà in esecuzione? Ciò che capita saranno una serie di eventi. Su alcuni di essi interverremo per far fare al programma quello che desideriamo. Il più semplice è il comando di uscita dall’applicazione stessa. Premendo il controllo cmdExit si vuole che il programma termini. L’evento è il click col mouse sul bottone. Per descrivere l’effetto desiderato allo scattare dell’evento, si prema il doppio click sulla figura del controllo cmdExit. Comparirà uno script di VB con il seguente aspetto:

Private Sub cmdExit_Click()
End Sub

Tutte le righe di codice che inseriremo entro questa coppia di istruzioni saranno eseguite come effetto dell’evento click. La parola chiave Sub sta per procedura (subroutine) e il nome che la identifica è determinato automaticamente da VB e vale cmdExit_Click. La clausola Private sta ad indicare che la procedura è privata e di uso esclusivo della form, non può essere cioè evocata da altri eventuali oggetti del programma. Per completare la procedura, in questo caso è sufficiente inserire una semplice istruzione che significa letteralmente scaricami:

Private Sub cmdUscita_Click()
    Unload Me
End Sub

Possiamo provare immediatamente il funzionamento di questo controllo; si manda in esecuzione il progetto tramite il tasto funzione F5. Compare la scheda del nostro progetto; con un click sul bottone vedremo che l’esecuzione termina correttamente e VB riprende il controllo tornando in ambiente di sviluppo. L’evento di click sul controllo cmdRaddoppia è un po’ più complesso. Lo script in esso contenuto deve:

  1. leggere quanto digitato dall’operatore;
  2. calcolare il doppio del valore letto;
  3. assegnare tale valore al medesimo controllo txtValore;
  4. controllare digitazioni errate da parte dell’operatore; se per esempio egli inserirà non un numero, ma delle lettere, il programma non potrà calcolare il doppio e dovrà segnalare all’operatore l’errore di digitazione.

La figura che segue illustra gli script appena descritti:

Sullo script dell’evento click del controllo cmdExit si è già discusso. Concentriamo l’attenzione invece sullo script a fronte dell’evento click sul controllo cmdRaddoppia. La prima istruzione ci porta a gestire il caso di errore. La prima istruzione utile è invece il vero e proprio calcolo di raddoppio. Nel controllo txtValore comparirà il suo valore originario raddoppiato. Il simbolo ‘*’ è il simbolo dell’operazione di moltiplica. L’istruzione successiva ci fa uscire dallo script. Se invece l’operatore digitasse una cosa tipo ‘33ab’ che non è un numero lo script va in errore perché non può calcolare il doppio di ‘33ab’ e il flusso dello script passa a ciò che segue l’etichetta di destinazione della gestione degli errori. Per prima cosa ri riazzera quanto scritto dall’operatore, poi si manda un messaggio di attenzione e infine si porta il fuoco del cursore attivo di nuov al controllo txtValore per permettere all’operatore di inserire un nuovo valore da provare.  Si noti il prefisso ‘Me.’ presente negli script. Esso sta a significare che le proprietà e i metodi che si applicano riguardano gli oggetti della form corrente frmMain come soggetto attivo, quindi ‘me’.  Per esempio, al posto di:

Me.txtValore.Text

si potrebbe scrivere anche:

frmMain.txtValore.Text


Generare l'eseguibile

L’ultimo passaggio da compiere è a questo punto la generazione del programma vero e proprio dal nome ProgettoBase.exe. La voce del menù File ‘Make Project’ trasformerà gli oggetti da noi composti, con i rispettivi script, nel programma eseguibile:

Ottenuto questo, potremmo mandarlo in esecuzione senza caricare VB, ma come un qualsiasi altro programma presente sul nostro pc.


Conclusione

A conclusione del progetto base appena generato vale la pena di evidenziare:

  1. la facilità di programmazione in VB;
  2. la possibilità di produrre in tempi rapidi un semplice programma eseguibile;
  3. il controllo di digitazione errate;
  4. la potenzialità di sviluppi ulteriori possibili.

Torna all'inizio pagina

Torna alla pagina CONTROLLO