Probleme avec l affichage des images

Probleme avec l affichage des images - Java - Programmation

Marsh Posté le 13-04-2003 à 11:43:52    

Bonjour, j ai un petit probleme, je dois afficher de images a l 'echelle pour qu'elles tiennent dans un cadre.  
Voici a peu pres, comment je fait:
 
[JAVA]
void paint(Graphics g) {
 chargerImages(g);
 afficherImages(g);
}
 
void chargerImages(Graphics g) {
 for(int i = 0; i< nbImages; i++) {
  tabImages[i] = getImage(getCodeBase(),monImage);
  tracker.addImage(tabImages,0);
 }
 
 tracker.waitForAll();
}
 
void afficherImages(Graphics g){
 for(int i = 0; i< nbImages; i++) {
  Image im = tabImages[i];
  int coéf = calculerCoéf(im.getWidth(),im.getHeigth(),maxX,maxY);
  g.drawImage(im, X,Y, (X+im.getWidth()/coéf), (Y+im.getHeigth()/coéf));
}
 
[/JAVA]
 
Voila ca ressemble a ca mais je n ai pas mon code sous la main!
Donc ca fonctionne mais il passe une bonne cinquantaine de fois dans ma méthode paint! Pourquoi et surtout comment puis je faire l éviter car en plus ca a pour effet de faire clignoter mon écran!
 
D avance merci!
 
Ben


Message édité par the big ben le 16-04-2003 à 12:46:26
Reply

Marsh Posté le 13-04-2003 à 11:43:52   

Reply

Marsh Posté le 13-04-2003 à 11:57:57    

deja tu pourrais ptet eviter de recharger toutes les images à chaque fois que tu redessines.
et fais une recherche dans le forum sur le double buffering

Reply

Marsh Posté le 13-04-2003 à 12:02:57    

oui mais a vrai dire ce n est pas mon code complet  
Et ces images changent régulierement (c est pour faire un espece de browser d images)

Reply

Marsh Posté le 13-04-2003 à 17:20:47    

The big ben a écrit :

oui mais a vrai dire ce n est pas mon code complet  
Et ces images changent régulierement (c est pour faire un espece de browser d images)
 


 
[mode je fais mon chieur]
une espece de browser
[/mode je fais mon chieur]
 
desole...  :D  
 
bon sinon, double buffering, c'est la base, et tu pourrais utiliser un mediatracker, et ne charger les images que si elles ont change, ca sera deja mieux je pense. essaie egalement d'utiliser la methode paint UNIQUEMENT pour l'affichage !! genre je me calcule fibonacci(1000) a chaque fois que je fais un repaint :) tu m'etonnes que ca clignotte  :non:  
 
bonne chance pour la suite !


Message édité par souk le 13-04-2003 à 17:21:40
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed