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

 



Dernière réponse
Sujet : [JAVA] Images et Applications
Fafix Merci !

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
Fafix Merci !
Rawhead rex Bon y a plusieurs pb :
 - je crois que si tu ne definit pas de layout pour gerer les composants de ta fenetre, toutes tes coordonnees sont relatives a l'ecran(!).
Donc ton point de depart 0,0 fait reference au coin haut gauche de l'ecran(!!).
 - deuxieme pb : tu met le show() dans ton constructeur !! -> met le a la fin du main.
 
Bon y a encore d'autre petit truc, je te balance un code remanie qui marche chez moi(par contre tu risque de devoir changer la taille ou le point de depart de l'image).
 
 
import java.awt.*;  
import java.awt.event.*;  
 
public class Temp extends Frame {  
    Image monImage;  
    int iNumIm = 15;  
    int iLargIm = 0;  
    int iHautIm = 0;  
     
    MediaTracker monTracker = new MediaTracker(this);  
     
    public static void main(String args[]) {  
 Temp aa = new Temp("IMG0000049.gif" );  
 aa.show() ;
    }  
                                 
    public Temp(String strName) {  
 super() ;
 enableEvents(WindowEvent.WINDOW_CLOSING);  
 
 monImage = getToolkit().getImage(strName);  
 
 /*monTracker.addImage(monImage,1);  
 try {  
     monTracker.waitForID(1);  
 } catch (InterruptedException e) {  
     System.err.println("Erreur: "+e);  
 }  
 */
 this.setSize(1200,1200);  
 
 //show();  
    }  
     
    public void paint(Graphics g) {  
 Image buffer=this.createImage(1,1) ;
 buffer.getGraphics().drawImage(this.monImage,0,0,this) ;
 g.drawImage(monImage,0,0,600,600,this);  
    }  
     
    protected void processWindowEvent(WindowEvent evt) {  
 if (WindowEvent.WINDOW_CLOSING == evt.getID())  
     System.exit(0);  
    }  
}
scaldan je ne sais si cela peut t'aider mais  c'est  comme cela que j'affiche une image et demande le rafraichissement
 
getContentPane().removeAll();
            getContentPane().setBackground(Color.white);            
            ImageIcon spikeImage = new ImageIcon(ResourceLoader.getResource("liste.Animations","images\\spike.gif" ));                    
            JLabel jLabel = new JLabel(spikeImage , JLabel.CENTER);                        
            getContentPane().add(jLabel);        
            getContentPane().validate();
            getContentPane().repaint();                        
 
-----------------------
-----------------------
-----------------------
import java.net.*;
 
class ResourceLoader {
    public static URL getResource(String classe, String path)  
    {
 try  
        {
  URL url = Class.forName(classe).getResource(path);
  return url;
 }
        catch (Exception e)  
        {
  System.out.println("Erreur chargement de ressource : path ==> " + path + " / classe ==> " + classe + " / " + e);
  return null;
 }
    }
}
gfive Ben, ça dépend!!  
Si tu lances ton java Maclass.class depuis l'endroit où il y a tes classes, pas de problème, sinon, ça va pas marcher: mais bon, si il trouvaut pas ton fichier, tu aurais sans doute une exception à la con....
jupiler non, non, ca c'est bon
Fafix J'ai essayé et c'est pareil...
 
J'espère que cela ne vient pas de l'endroit ou placer le .gif ?
Je l'ai mis dans le même rép que les classe... (et par précaution, dans le rép de mon projet, créé sous JCreator)
Cherrytree Pendant ce temps, je cherche dans mes bouts de code.
gfive Essaie de remplacer  
getToolkit().getImage(strName);  
 
part Toolki.getDefaultToolkit().getImage(strName);
 
pour voir...
Fafix En fait, mon pb se cache là:
 
import java.awt.*;
import java.awt.event.*;
 
public class Temp extends Frame {
 Image monImage;
 int iNumIm = 15;
 int iLargIm = 0;
 int iHautIm = 0;
 
 MediaTracker monTracker = new MediaTracker(this);
 
 public static void main(String args[]) {
  Temp aa = new Temp("fond.gif" );
 }
 
 public Temp(String strName) {
  enableEvents(WindowEvent.WINDOW_CLOSING);
   
  monImage = getToolkit().getImage(strName);
   
  monTracker.addImage(monImage,1);
  try {
   monTracker.waitForID(1);
  } catch (InterruptedException e) {
   System.err.println("Erreur: "+e);
  }
   
  setSize(monImage.getWidth(this), monImage.getHeight(this));
   
  show();
 }
 
 public void paint(Graphics g) {
  g.drawImage(monImage,0,0,600,600,this);
 }
 
 protected void processWindowEvent(WindowEvent evt) {
  if (WindowEvent.WINDOW_CLOSING == evt.getID())
  System.exit(0);
 }
}
jupiler montre ton code
Fafix Salut !
J'ai décomposé une appli en une classe contenant mon main et des fonctions, une GUI et une classe pour les ActionListener.
Je voudrais afficher des images dans ma GUI. J'ai fait comme pour une applet (à part que j'utilise getToolkit() etc...) et une méthode paint. Mais ça marches pas :(
J'ai un autre truc bizarre, quand j'utilise g.drawString("...",
la ligne n'apparaît qu'une fois sur deux dans ma GUI !?
Une idée ?
Si vous avez un tut qui explique bien ça pour les APPLICATIONS et non les applets, ça m'interesse aussi ...
D'avance merci !
A+
Fafix

Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR