Your SlideShare is downloading. ×
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Come Inserire Elementi Grafici In Una Finestra Windows
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Come Inserire Elementi Grafici In Una Finestra Windows

2,419

Published on

come inserire elementi grafici in un frame java

come inserire elementi grafici in un frame java

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,419
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
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. COME INSERIRE ELEMENTI GRAFICI IN UNA FINESTRA WINDOWS
  • 2. FARE UN PANNELLO CON IL PROPRIO DISEGNO
    • Per disegnare la propria grafica e metterla nello schermo del computer in una finestra windows (un frame), la migliore scelta è quella di realizzare un pannello con i nostri disegni.
    • Poi si aggiunge questo pannello al frame, allo stesso modo con cui ci si può aggiungere un bottone, una etichetta (label) o una casella di testo.
    • Quando questo pannello sarà mostrato, ci saranno le vostre immagini, anche le vostra animazioni.
  • 3. COME SI COSTRUISCE UN PANNELLO
    • Per costruire un pannello:
      • Si crea una sottoclasse di JPanel
      • Si implementa il metodo paintComponent()
  • 4. IL METODO PAINTCOMPONENT()
    • Tutto le istruzioni grafiche vanno nel corpo del metodo paintComponent()
    • Pensa a questo metodo come al metodo chiamato dal sistema per dire “ immagine è ora che ti ridisegni!”.
    • Se volete disegnare un cerchio, il metodo paintComponent() ha le istruzioni per disegnare un cerchio
    • Quando viene visualizzato il frame che contiene il vostro pannello, il metodo paintComponent() è chiamato e appare il vostro cerchio.
    • Ogniqualvolta il sistema pensa che il display necessiti di essere rinfrescato, chiamerà (eseguirà) il metodo paintComponent()
    • Mai chiamate questo metodo all’interno del vostro programma!
  • 5. L’ARGOMENTO DI PAINTCOMPONENT(GRAPHICS G)
    • Il parametro di input di questo metodo è un oggetto g della classe Graphics
    • Questo oggetto grafico è la tela dipinta che viene mostrata nel display del computer
    • Questa tela (canvas) è gestita dal sistema
    • Si può tuttavia chiedere al sistema di rinfrescare il dipinto con l’istruzione repaint()
    • Repaint() fa scattare un meccanismo per il quale alla fine il sistema chiama (esegue) il metodo paintComponent()
  • 6. ESEMPIO DI PANNELLO
  • 7. DISPLAY DI UNA IMMAGINE JPEG
  • 8. DISPLAY DI UN CERCHIO COLORATO A CASO
  • 9. DIETRO OGNI RIFERIMENTO A GRAPHICS C’È UN OGGETTO GRAPHICS2D
    • Public void paintComponent(Graphics g){ }
    • Il parametro g è un oggetto Graphics. Ciò significa che può anche essere un oggetto di una sottoclasse di Graphics. E in effetti lo è!
    • L’oggetto puntato da g è un’istanza della classe Graphics2D
    • Che c’importa ?
    • Ci interessa perché ci sono cose che possiamo fare con un riferimento a Graphics2D e che invece non possiamo fare con Graphics.
  • 10. IL COMPILATORE DECIDE QUALE METODO CHIAMARE
    • Il compilatore decidi quale metodo eseguire sulla base del tipo di riferimento, non del tipo di oggetto effettivo puntato dal riferimento
    • Ad esempio Animale a=new Dog();
    • Non si può dire a.abbaia(); anche se sappiamo che a è un Dog. Il compilatore guarda a, vede che è un tipo Animale e trova che non esiste il metodo abbaia() in Animale.
    • Tuttavia possiamo creare un riferimento di tipo Dog: Dog d=(Dog) a; e d.abbaia() è OK.
  • 11. LA REGOLA DA SEGUIRE PER USARE UN METODO DELLA CLASSE GRAPHICS2D
    • Se c’è bisogno di usare un metodo della classe Graphics2D, non si può usare direttamente il parametro ‘g’ di paintComponent().
    • Si deve fare il casting del parametro ‘g’ con una nuova variabile Graphics2D
    • Graphics2D g2D=(Graphics2D) g;
  • 12. I METODI DELLE CLASSI GRAPHICS E GRAPHICS2D
  • 13. ESEMPIO
    • Possiamo ottenere un evento ed ascoltarlo
    • Possiamo disegnare della grafica
    • Ma posssiamo disegnare della grafica quando otteniamo un evento ?
    • La risposta è SI !
  • 14. TESTO DELL’ESEMPIO
    • Disegniamo un frame con un pannello avente un cerchio ed un bottone
    • Vogliamo che il cerchio cambi colore ogni volta che clicchiamo il bottone
    • Identifichiamo le fasi del lavoro
  • 15. PRIMA FASE
    • Il frame è disegnato con due oggetti: il pannello disegnato e il bottone.
    • Si crea un listener e lo si registra al bottone
    • Il frame viene visualizzato e si aspetta l’input dell’utente
  • 16. SECONDA FASE
    • L’utente clicca il bottone
    • Il bottone crea un evento e chiama il gestore che ascolta l’evento
  • 17. TERZA FASE E QUARTA FASE
    • 3) il gestore dell’evento chiama il metodo repaint() del frame
    • Il sistema chiama paintComponent() per ridisegnare il pannello
    • 4) ed ecco che un nuovo colore è dipinto sul pannello perché di nuovo è eseguito il metodo paintComponent() con un colore casuale
  • 18. ESERCITAZIONE
    • Fare il programma che implementa le fasi del lavoro precedentemente definite
    • Fare un secondo programma che modifica il precedente programma nel seguente modo: si crea un secondo bottone. Il secondo bottone deve servire per colorare il pannello di rosso.
  • 19. FINE DELLA TERZA PUNTATA

×