Lezione 10 - Programmazione Ad Oggetti, Vb Accenni

  • 3,035 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
3,035
On Slideshare
0
From Embeds
0
Number of Embeds
2

Actions

Shares
Downloads
0
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Prof Adriani Francesco francesco.adriani@ricecipriani.it http://mate.myblog.it
  • 2. Programmazione ad Oggetti: OOP e Visual Basic Cosa sono gli oggetti Analogia con la realtà Astrazione massima Oggetti specifici nel Vb Proprietà, Metodi ed Eventi Paradigmi della programmazione in Vb Sub e Function http://mate.myblog.it 2
  • 3. Le classi I membri di una classe sono: attributi (dati, esattamente come i membri di un record) sono dati che caratterizzano la singola istanza metodi (procedure che operano su un oggetto) sono le azioni che possono compiere tutte le istanze modificano gli attributi metodi particolari sono gli eventi che vengono richiamati quando un attributo viene modificato http://mate.myblog.it 3
  • 4. Classe1 Classe2 Attributi Attributi • Colore • Base • Forma • Altezza • Posizione Metodi Metodi • Ricolora • Calcola Area • Spostati • Calcola Perimetro http://mate.myblog.it 4
  • 5. Gli oggetti Un oggetto è una istanza di una classe. Un oggetto occupa memoria, la sua classe definisce come sono organizzati i dati in questa memoria. Oggetto1: Classe1 Oggetto2: Classe2 Attributi Attributi • Colore: Bianco • Base: 20 • Forma: Quadrato • Altezza: 30 • Posizione: 0,0,10,6 http://mate.myblog.it 5
  • 6. Gli oggetti L’oggetto non memorizza i metodi perché sono memorizzati già dalla classe mentre memorizza tutte le sue proprietà (attributi) http://mate.myblog.it 6
  • 7. Gli oggetti e la realtà Il concetto che sta dietro alla programmazione ad oggetti nasce dallo stesso principio: ciò che importa non è l'implementazione interna del codice (che corrisponde ai componenti elettronici, nel caso del masterizzatore) ma, piuttosto, le caratteristiche e le azioni che un componente software è in grado di svolgere e che mette a disposizione (espone) all'esterno. http://mate.myblog.it 7
  • 8. Gli oggetti e la realtà Chi programma ad oggetti non pensa a come è stato scritto il codice dell’oggetto ma pensa a come è fatto l’oggetto in termini di caratteristiche ed azioni Nella realtà si possono rappresentare tutte le cose con gli oggetti, infatti tutte le cose fanno parte di una classe di cose che ne definiscono le azioni che compiono, mentre ciò che distingue le cose dalle altre come loro sono le caratteristiche ad esempio: http://mate.myblog.it 8
  • 9. Gli oggetti e la realtà Classe Macchina Panda: Ypsilon: Attributi Macchina Macchina • Marca • Modello • Velocità Attributi Attributi • Marca: Fiat • Marca: Lancia • Modello: Panda • Modello: Ypsilon • Velocità: 0 • Velocità: 0 Metodi • Fermati • Accelera • Parti http://mate.myblog.it 9
  • 10. Gli oggetti e la realtà In questo modo si può rappresentare qualsiasi realtà tramite questo particolare paradigma. E abbiamo più facilità di gestione della programmazione Non abbiamo bisogno di conoscere il linguaggio di programmazione approfonditamente dato che tutti i linguaggi di programmazione ad oggetti sono molto simili! http://mate.myblog.it 10
  • 11. Oggetti specifici del Vb http://mate.myblog.it 11
  • 12. Oggetti specifici delVb http://mate.myblog.it 12
  • 13. Proprietà Proprietà Serve a Name per impostare il nome dell'oggetto può valere true o false e rende l'oggetto Visible visibile o invisibile per abilitare un oggetto con true o Enabled disabilitarlo con false FontName il nome di un font di caratteri FontSize la dimensione del font forecolor per attribuire il colore del testo http://mate.myblog.it 13
  • 14. Metodi I metodi degli oggetti di visual basic non sono molti e spesso dipendono dal tipo di oggetto, come nel caso di listbox per esempio che ha metodi caratteristici come additem e removeitem, che sono presenti anche per combobox. Ci sono però dei metodi che tutti gli oggetti hanno; uno di questi é setfocus. Questo metodo permette di spostare 'il fuoco' sopra l'oggetto indicato. Per fuoco s'intende quale control in un determinato momento ha l'attenzione di Visual Basic e spostare il fuoco vuol dire fare in modo che VB sia posizionato sopra l'oggetto voluto. Esempio: txtNome.setFocus Naturalmente se txtNome non é visibile, questa istruzione da' errore. Un altro metodo in comune é move; esso serve a cambiare la dimensione e la posizione di un oggetto dentro il form. La sintassi completa é: http://mate.myblog.it 14
  • 15. Metodi oggetto.move left,top,width,heigh dove i 4 parametri sono rispettivamente la posizione a sinistra, in alto, la larghezza e la lunghezza dell'oggetto espressi in twips. 256 twips corrispondono ad 1 cm circa. I parametri left e top dipendono da dove si trova l'oggetto: se é in un form, si ri feriscono alle coordinate del form che hanno il punto 0,0, ovvero l'origine del sistema di riferimento, nell'angolo in alto a sinistra del form. Se l'oggetto é all'interno di un frame, le coordinate si riferiscono all'angolo in alto a sinistra del frame e non del form che li contiene entrambe. In pratica le coordinate sono relative all'oggetto che li contiene. Esempio di move: txtNome.move 10,20,200,225 Ultimo metodo sempre presente é refresh serve a rivisualizzare l'oggetto nel caso VB non l'abbia fatto correttamente: non é molto usato. http://mate.myblog.it 15
  • 16. Eventi activate attivazione del control (vedi il caso del form) cambiamento nel contenuto del control come in change label e textbox click ho fatto click col mouse dblClick doppio click gotfocus il control ha il fuoco keydown tasto tenuto premuto keypress codice del tasto premuto keyup tasto premuto e rilasciato load caricamento dell'oggetto lostfocus perdita del fuoco mousedown tasto del mouse tenuto premuto mouseup tasto del mouse premuto e rilasciato mouse in movimento Non tutti gli eventi descritti mousemove valgono per tutti gli oggetti http://mate.myblog.it 16
  • 17. Sub Le procedure sono dei blocchi di codice che permettono di eseguire una serie di istruzioni quando vengono richiamate. Le Sub sono delle procedure che quando terminano la loro esecuzione, non restituiscono un valoer di ritorno. Le Function invece oltre ad eseguire il loro codice hanno un valore di ritorno. SUB Vediamo come si dichiara una procedura Sub: Sub nomeProcedura (lista parametri) Dichiarazioni locali ed istruzioni End Sub http://mate.myblog.it 17
  • 18. Function Sono simili alle Sub, ma restituiscono un valore. Per questo motivo nella segnature, occorre specificare il tipo restituito. Function nomeProcedura (lista parametri) As tipoDiRitorno Dichiarazioni locali ed istruzioni Return espressione End Function http://mate.myblog.it 18