Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Java - disegnare un image su un jpanel già creato con gui
Forum - Java - disegnare un image su un jpanel già creato con gui

Avatar
killer (Normal User)
Expert


Messaggi: 217
Iscritto: 19/07/2009

Segnala al moderatore
Postato alle 23:07
Sabato, 12/02/2011
salve a tutti, come da 'oggetto' dovrei disegnare su un jpanel,già creato con GUI netbeans,una Image ricavata da database mysql....
ho provato con il seguente code ma non funziona.. sbaglio qualcosa ?

private void paintPhoto() {
        Image currImage = database.getImage();//non c'è un errore nel ricavarmi l'immagine....perche currImage contiene l'immagine vera e propria..

//è da questo momento in poi secondo me che sbaglio qualcosa :(
        Graphics g = jPanelPhoto.getGraphics();
        super.paintAll(g);
        g.drawImage(currImage, 0, 0, 100, 100, jPanelPhoto);
}

//jPanelPhoto è contenuto in  un altro JPanelX
ho provato a realizzare una classe che estende jPanel ma nulla da fare.....
non riuscirei dopo a settare il jpanel in un altro panel..
aiutatemi voi..come posso fare...?! :) attendo una vostra risposta.

Ultima modifica effettuata da killer il 12/02/2011 alle 23:08
PM Quote
Avatar
tekdu (Normal User)
Rookie


Messaggi: 45
Iscritto: 07/04/2010

Segnala al moderatore
Postato alle 18:49
Venerdì, 11/03/2011
Codice sorgente - presumibilmente Java

  1. public class PhotoPanel extends JPanel{
  2.  
  3. private Image currImage=null; //non troppo corretto
  4.  
  5. @override
  6. public void paintComponent(Graphics g){
  7.        super.paintComponent(g);
  8.        if(currImage!=null) g.drawImage(................);
  9.        else{..........................}
  10. }
  11.  
  12. public void setImage(Image img){
  13. currImage=img; //al limite passa una string path...
  14. }
  15.  
  16. private void removeImage(){
  17. currImage=null;
  18. }
  19.  
  20. private void paintPhoto(){
  21. setImage(database.getImage());
  22. repaint() //avvia paintComponent e disegna la foto.
  23. }


in questo modo disegna sul panel la foto del db.
ho scritto il codice senza provarlo xcio' nn so se è completamente corretto cmq il metodo è questo. uso database.getImage() nella classe e cio' nn sarebbe possibile a meno che non sia un inner class ma cmq avere l'immagine nn dov essere un problema... ciaùz:k:

Ultima modifica effettuata da tekdu il 11/03/2011 alle 18:53
PM Quote