Visual C# 4TC a.s. 2010/11 Appunti da M.De Benedittis – C# -ed. Hoepli a cura di Carla Fanchin - LS Tron (Schio)
L’ambiente IDE Appena si lancia l’ IDE (Integrated Development Environment) è possibile Creare un nuovo Progetto Il nuovo progetto verrà salvato nella directory predefinita indicata in: Strumenti-Opzioni (mettere il segno di spunta a mostra tutte le impostazioni)- Progetti e soluzioni (NB E’ possibile cambiarla)
GUI (Graphic Unit Interface) Un’applicazione con interfaccia grafica (GUI) si basa su: 1) FORM e Controlli sul Form II) Metodi che gestiscono gli eventi generati dall’utente tramite l’interazione con i controlli presenti sul Form
Programmazione ad oggetti ed Eventi Il Form ed i controlli si ottengono istanziando oggetti di classe Form, TextBox, Label (cui viene attribuito un nome progressivo es. TextBox1, TextBox2 …) Gli eventi sono le azioni (di tipo asincrono) generate dall’utente (es click su un pulsante)
Procedimento Il programmatore deve quindi Creare l’interfaccia grafica (Form + Controlli presenti nella Casella degli strumenti) Impostare in fase iniziale alcune Proprietà (v. Finestra Proprietà) Predisporre il Codice C# (Metodi) che partirà in risposta agli eventi generati dall’utente una volta avviato il Debug
Controlli e Proprietà principali PROPRIETA’ TextBox: Proprietà Name (nome) e Text (contenuto della casella di testo) Label: Proprietà Name (nome) e Text (contenuto della label) Button: Proprietà Name (nome) NB. E’ buona norma dare un nome significativo ai controlli, iniziando col prefisso txt se è una casella di testo, lbl se è una label, btn se è un pulsante: es btnSomma METODI Cliccando due volte sul pulsante (Button) si “entra” nella parte di scrittura del Metodo che parte in risposta alla pressione del pulsante. Ad es.: private void btnSomma_Click(object sender, EventArgs e) { // scrittura del codice }
Somma di due numeri (ATTENZIONE) !?! private void btnSomma_Click(object sender, EventArgs e) { lblRis.Text = txtNum1.Text + txtNum2.Text; }
Procedimento corretto La proprietà Text delle caselle di testo o delle Label è di tipo STRINGA e quindi occorre convertirla in intero prima di fare i conti. Operazione inversa (conversione da intero a Stringa) quando si tratta di visualizzare il risultato private void btnSomma_Click(object sender, EventArgs e) { int n1, n2, ris; n1 = Convert.ToInt32(txtNum1.Text); n2 = Convert.ToInt32(txtNum2.Text); ris = n1 + n2; lblRis.Text = Convert.ToString(ris); }
Evento MouseEnter Quando il mouse si ferma sulla PictureBox1, appare il MessageBox di guida private void pictureBox1_MouseHover(object sender, EventArgs e) { MessageBox.Show("Inserisci i due numeri e clicca per avere la somma"); } NB. Per la lista degli eventi, dopo aver selezionato il controllo PictureBox, cliccare nella finestra delle proprietà, sugli eventi (Pulsante Eventi (quello con il “LAMPO”))