L`ambientedisviluppo integratodi C++Builder
Transcript
L`ambientedisviluppo integratodi C++Builder
Corso di C++ Builder Lezione n. 1 L’ambiente di sviluppo integrato di C++ Builder Introduzione al C++ Builder 6. Premessa: tutte le lezioni avranno una prima parte teorica (più noiosa ma necessaria) e una seconda parte pratica (molto utile e più intuitiva). La prima volta che viene avviato il programma1, sullo schermo vengono visualizzati una_scheda vuota e l'ambiente di sviluppo integrato (vedere la figura 1.3). Per avviare il programma un clic su Start -> Tutti i programmi -> Borland C++ Builder -> C++ Builder, come illustrato nell’immagine sottostante. L'ambiente di sviluppo integrato (IDE - Integrated Development Environment) di C++ Builder si suddivide in tre parti. La finestra che appare in alto sullo schermo può essere considerata la finestra principale. In alto a sinistra si trova la barra degli strumenti e a destra la barra dei componenti (vedi figura 1.1) Figura 1.1 La barra degli strumenti offre la possibilità di accedere con un clic a tutte le operazioni di base, come ad esempio l'apertura, il salvataggio e la compilazione dei progetti. La barra dei componenti contiene invece un gran numero di componenti che possono essere trascinati in una scheda (con componenti si intendono etichette di testo, controlli di editing, caselle di riepi- E’ possibile scaricare la versione gratuita del compilatore di Borland dall’indirizzo http://www.borland.com/bcppbuilder/freecompiler/cppc55steps.html. 1 Maria Cristina Benini - Manuali.Net © 2004 Tutti i diritti riservati 1 Corso di C++ Builder Lezione n. 1 logo, pulsanti e così via). Per comodità i componenti sono suddivisi in gruppi. Nella parte superiore della barra appaiono infatti le "linguette" delle schede della barra dei componenti. Cliccando su queste schede è possibile scoprire tutti i componenti disponibili. Per inserire un componente in una scheda basta fare clic sul pulsante del componente nella barra dei componenti e quindi fare clic sulla scheda nel punto in cui deve trovarsi il componente. Durante questa fase dell’esplorazione delle possibilità di C++ Builder, si può fare clic sulla scheda di componenti Standard poiché fra poco se ne avrà bisogno. Un componente è un frammento indipendente di software binario che esegue alcuni compiti specifici e ben definiti, ad esempio può essere un'etichetta di testo, un controllo dì editing o una casella di riepilogo. Sotto la barra degli strumenti, sul lato sinistro dello schermo si trova la finestra di Object Inspector (figura 1.2). Object Inspector consente di modificare le proprietà e gli eventi controllati da un componente. Object Inspector può avere una o due schede, a seconda dei componenti attualmente selezionati. In particolare vi è sempre una scheda Properties ( Proprietà). Le proprietà di un componente rappresentano gli attributi dell'oggetto, ad esempio: nome, larghezza, altezza, colore, ecc. Figura 1.2 L'elenco delle proprietà disponibili varia da componente a componente anche se i componenti hanno numerosi elementi in comune (ad esempio le proprietà di altezza e larghezza). Maria Cristina Benini - Manuali.Net © 2004 Tutti i diritti riservati 2 Corso di C++ Builder Lezione n. 1 Una proprietà determina una caratteristica del funzionamento di un componente. Normalmente in Object Inspector, oltre alla scheda Properties, si trova una scheda Events (Eventi). Gli eventi rappresentano le azioni che l’utente può effettuare su un certo oggetto, ad esempio: pressione di un tasto, click del mouse, ecc. Un applicazione Windows è governata dagli eventi prodotti dall'interazione dell'utente con l'applicazione. Compito del programmatore è scrivere dei “Gestori di evento”, definire cioè delle funzioni che vengono attivate nel momento in cui l’evento si verifica (ad esempio il gestore di evento OnClick definisce il comportamento dell’applicazione a fronte dell'evento Click). Entrambe le schede (Proprietà ed Eventi) sono composte da 2 colonne: in quella di sinistra è riportato l’elenco in ordine alfabetico delle proprietà o degli eventi gestibili rispetto al componente selezionato, in quella di destra è possibile digitare o selezionare l’impostazione della proprietà o il nome dell’evento. Figura 1.3 A questo punto si deve scrivere il codice che risponda a tale evento, eseguendo azioni specifiche nel momento in cui si verifica un determinato evento. Come nel caso delle proprietà, gli eventi ai quali è possibile rispondere variano da componente a componente. Un evento si verifica come risultato di un'interazione avvenuta fra l'utente (o Windows) e il componente stesso. Un gestore di eventi (handler) è un metodo richiamato dall'applicazione come risposta a un evento. A destra di Object Inspector si trova lo spazio di lavoro di C++ Builder. Inizialmente lo spazio di lavoro visualizza l'editor di schede. L'editor di schede consente di creare nuove applicazioni. In C++ Builder una scheda rappresenta una finestra del programma. La scheda può rappresentare la finestra principale del programma, una finestra di dialogo o qualsiasi altro tipo di finestra. Si può utilizzare l'editor di schede per posizionare, spostare e dimensionare i componenti durante il processo di creazione delle schede. Nascosto sotto l'editor di schede si trova l'editor del codice (vedere la figura 1.4) . L'editor del codice è il luogo in cui si digita il Maria Cristina Benini - Manuali.Net © 2004 Tutti i diritti riservati 3 Corso di C++ Builder Lezione n. 1 codice quando si scrive un programma. Object Inspector, l'editor di schede, l'editor del codice e la barra dei componenti funzionano in modo interattivo mentre si costruisce l'applicazione. Figura 1.4 Editor di codice Il primo passo per la costruzione di una applicazione Windows è costituito dal disegno della sua Form principale; le Form corrispondono alle finestre del sistema operativo Windows. Un’applicazione Windows è costituita da almeno una Form. All’avvio di C++ Builder l’elemento attivo per default (cioè standard) è proprio una Form vuota. Una Form vuota può essere paragonata al piano terra di una palazzina in costruzione. Il programmatore, stabilito l’obiettivo dell’applicazione che intende realizzare, utilizzerà graficamente la Form in modo tale da rispettare il progetto che si è prefisso. Per definire una Form le operazioni da eseguire sono le seguenti: 1. Impostare gli attributi della Form (dimensione, colore, ecc.). 2. Posizionare sulla Form dei componenti che permetteranno di svolgere i compiti desiderati. 3. Impostare gli attributi dei componenti in modo che l’insieme risulti funzionale. 4. All’occorrenza, per aggiungere una nuova Form all’applicazione che si sta creando, cliccare su menù File e scegliere New Form. Principali Proprietà, Eventi e Componenti di una Form Le principali Proprietà di una Form sono: Name = Imposta il nome della Form a livello di applicazione; tale nome identifica il componente all’interno del programma. Caption = Imposta il nome della Form da visualizzare nella Barra del titolo. Width = Imposta la larghezza in pixel dalla Form. Height = Imposta l’altezza in pixel dalla Form. Color = Imposta il colore di sfondo della Form. Maria Cristina Benini - Manuali.Net © 2004 Tutti i diritti riservati 4 Corso di C++ Builder Lezione n. 1 Una Form comprende molte altre proprietà, per ottenere le relative descrizioni, selezionare la proprietà desiderata e premere F1. I principali Eventi di una Form sono: OnShow = Definisce il comportamento dell’applicazione in fase di apertura e visualizzazione di una Form. OnActivate = Definisce il comportamento dell’applicazione alla riattivazione di una Form, per esempio conseguente alla pressione di Alt+Tab. OnClick = Definisce il comportamento dell’applicazione in seguito al click del mouse sulla form. OnKeyPress = Definisce il comportamento dell’applicazione in seguito alla pressione di un carattere sulla tastiera. OnClose = Definisce il comportamento dell’applicazione in fase di chiusura della Form. I principali Componenti inseribili su una Form sono: TEdit = Casella editazione a linea singola, per l’inserimento e la modifica di testo. TMemo = Finestra di editazione multilinea, per l’inserimento e la modifica del testo. TButton = Pulsante che premuto avvia l’esecuzione di una o più azioni. TLabel = Etichetta testuale di sola lettura. TListBox = Lista di selezione tra un insieme di elementi TComboBox = E' un controllo combinato che mette in relazione le voci presenti in una ListBox e il testo eventualmente digitato nella EditBbox. E' possibile, per esempio, selezionare un elemento della lista, digitando la lettera iniziale. TCheckBox = Casella di controllo, interruttore. TRadioButton = Pulsante di opzione; si inseriscono a gruppi sulla Form per permettere la scelta tra diverse opzioni. Le opzioni sono tra loro esclusive. Esercitazione pratica sugli eventi Avviare il programma C++ Builder 6, al termine del caricamento di C++, si dovrebbe visualizzare una scheda vuota detta anche Form. Innanzitutto si può impostare la scheda principale (form) nel seguente modo: 1 Nel settore Object Inspector sito alla sinistra del monitor, nella “linguetta” Properties, modificare la proprietà Name assegnandole il valore PMEForm (PME per “Proprietà, Metodi ed Eventi"). 2 Sempre nelle proprietà (Properties ) modificare la proprietà Caption assegnandole il valore Programma di prova PME. Quindi si deve aggiungere alla scheda un componente memo che si trova nella scheda Standard: 1. Cliccare una volta sul pulsante Memo (il sesto dopo la freccia). 2. Fare un clic sulla Form per posizionare il componente memo. 3. Modificare la proprietà Name in Memo. Assicurarsi che il componente memo sia selezionato per non cambiare accidentalmente il nome della scheda invece del nome del componente. 4. Fare doppio clic sulla proprietà Lines nella colonna del valore. Verrà visualizzato l'editor di stringhe. 5. Cancellare la parola Memo e digitare la frase "Programma di test che utilizza le proprietà, i metodi e gli eventi". Fare clic su OK per chiudere l'editor di stringhe. 6. Ridimensionare il componente memo in modo che occupi la maggior parte della scheda. Nella parte inferiore si deve lasciare uno spazio sufficiente per un pulsante. Ora si può provare a inserire nella form un pulsante: 1. Sempre nella scheda Standard della barra dei componenti, cliccare sul componente Button (il settimo dopo la freccia). 2. Fare un clic sulla scheda sotto al componente memo per inserirvi il pulsante. Modificare la Maria Cristina Benini - Manuali.Net © 2004 Tutti i diritti riservati 5 Corso di C++ Builder Lezione n. 1 proprietà Name del pulsante in Button. 4. Modificare la proprietà Caption in Mostra/Nascondi. 5. Ridimensionare il pulsante e centrarlo orizzontalmente sulla Form. Ora la scheda dovrebbe avere l'aspetto illustrato nella figura 1.5. Figura 1.5 Si può centrare un componente visivamente oppure utilizzare un metodo più esatto grazie agli strumenti della tavolozza di allineamento. A tale scopo si deve selezionare dal menu View l'opzione Alignment Palette e quindi fare clic sul pulsante Center horizontally in window della tavolozza di allineamento. Questo pulsante verrà utilizzato, alternativamente, per nascondere e visualizzare il componente Memo. Ora è necessario scrivere del codice in modo che quando si fa clic sul pulsante accada qualcosa. Assicurarsi che il componente Button sia selezionato e quindi in Object Inspector fare clic sulla scheda Events. Verrà presentato un elenco degli eventi che il componente Button può gestire. Il primo dovrebbe essere l'evento OnClick. Si provi a fare doppio clic sulla colonna del valore dell'evento OnClick. Ciò che accade ora è uno dei maggiori vantaggi della programmazione visuale. Viene visualizzato l'editor di codice che visualizza la funzione ButtonClick ed offre la possibilità di immettere direttamente il codice da eseguire. La figura 1.6 mostra l'editor di codice e la funzione per la gestione dell'evento OnClick. Maria Cristina Benini - Manuali.Net © 2004 Tutti i diritti riservati 6 Corso di C++ Builder Lezione n. 1 Figura 1.6 La finestra dell’editor di codice di C++ Builder contenente la funzione per la gestione dell’evento OnClick. Le funzioni di C++ Builder utilizzano la parola riservata _ _fastcall (si noti che la parola riservata inizia con due caratteri di sottolineatura). Ora non è importante sapere ciò che viene svolto da _ _fastcall ma solo che ogni funzione di C++ Builder usa questa convenzione di chiamata. Le funzioni saranno chiarite nella terza lezione. Ora è opportuno salvare il progetto in quanto lo termineremo in seguito inserendo alcune righe di codice. A tale scopo selezionare dal menu File l'opzione Save All (Salva tutto). La prima cosa da fare è creare una cartella chiamandola “Programma di prova” nel proprio computer; all’interno della cartella, verrà chiesto il nome da assegnare all'unità (il file sorgente). Si può utilizzare il nome PMEMain e fare clic su OK. Quindi si deve specificare il nome del progetto. Si può utilizzare il nome PMETest e premere INVIO o fare clic su OK. Nella prossima lezione verrà spiegato il motivo per il quale si salva l’unità e il progetto. Maria Cristina Benini - Manuali.Net © 2004 Tutti i diritti riservati 7 Corso di C++ Builder Maria Cristina Benini - Manuali.Net © 2004 Tutti i diritti riservati Lezione n. 1 8