Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2950 connectés 

 


Dernière réponse
Sujet : [JAVA] pb d'affichage image
darklord22

jupiler a écrit a écrit :

Ok je crois que j'ai trouvé. Faut mettre l'objet courant comme Image Observer au moment de dessiner l'image, j'avais mis null  




 
et oui :)


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
darklord22

jupiler a écrit a écrit :

Ok je crois que j'ai trouvé. Faut mettre l'objet courant comme Image Observer au moment de dessiner l'image, j'avais mis null  




 
et oui :)

jupiler Ok je crois que j'ai trouvé. Faut mettre l'objet courant comme Image Observer au moment de dessiner l'image, j'avais mis null
jupiler ///class principale Frame
public class ChatRoom extends Frame {
 
 
 private FlagIcon trackSelect[] = new FlagIcon[Tracks.TRACKS_NB];
 private TrackIcon iconShow;
 private GridBagConstraints flagsGBC;
   
 public ChatRoom () {
  setLayout(new GridBagLayout());
   
  setLocation(200,0);
   
 
  iconShow = new TrackIcon(0);
  add(iconShow, iconShow.GBC);
   
   
  pack();
   
  setVisible(true);
     
 }
 
 public void selectTrack (int trackNumber) {
  iconShow.update(trackNumber);
 }
 
}
 
 
class TrackIcon extends Canvas {
 
 private static String fileName;
 private static Image pic;
 private static int trackNumber;
 
 public static GridBagConstraints GBC;
 
 public static final int WITDH = 451;
 public static final int HEIGHT = 280;
 
 public TrackIcon(int idx) {
  trackNumber = idx;
   
  GBC = new GridBagConstraints();
   
  GBC.gridx = 1;
  GBC.gridy = 0;
  GBC.gridwidth = 1;
  GBC.gridheight = 1;
  GBC.fill = GridBagConstraints.NONE;
  GBC.anchor = GridBagConstraints.CENTER;
  GBC.ipadx = WITDH;
  GBC.ipady = HEIGHT;
  GBC.weightx = 0;
  GBC.weighty = 0;
   
  repaint();
 }
 
 public void paint(Graphics g) {
  fileName = Tracks.iconsDir + Tracks.tracksName[trackNumber] + ".jpg";
  pic = getToolkit().getImage(fileName);
  g.drawImage(pic, 0, 0, WITDH, HEIGHT, null);
 }
 
 public void update(int idx) {
  trackNumber = idx;
  repaint();
 }
 
}
 
C'est la fonction main dans une autre classe qui créé une instance de ChatRoom.

 

[edtdd]--Message édité par jupiler--[/edtdd]

darklord22 balance ton code stp
jupiler salut,
 
je crée un ou plusieurs objets Canvas.
 
je dessine une image dans paint() (drawImage...)
 
mais l'image n'apparait pas directement à l'exécution, je suis obligé de cacher la fenêtre de l'appli puis de la réafficher pour voir ce que je veux.
 
et quand je fais un repaint(), c'est la meme chose. Il faut cacher puis remontrer la fenêtre pour rafraîchir.
 
 
Quelqu'un saurait d'ou ca peut venir?

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)