begin process at 2012 02 12 02:24:49
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Débutant(e)

 > 

Visionner des images JAVA


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Visionner des images JAVA

jeudi 8 mai 2008 à 17:59:43 | Visionner des images JAVA

punisher999

Bonjours, ce que je voudrais faire est peut-être simple mais ne l'ai pas pour moi.

Je veux que mon interface ressemble à cela (en ce moment elle lui ressemble) sauf que je veux que mon interface aille chercher dans un dossier spécifique les images qui s'y trouve dans le dossier et qu'on puisse naviguer en cliquant sur les flèches.

Voici le genre [IMG]http://www.nordiks.com/images/faxscreen.JPG[/IMG]

Voici mon code pour ceux qui vont pouvoir m'aider, car je suis débutant

[CODE]import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.HashSet;
import java.util.Set;

import javax.imageio.ImageIO;
import javax.swing.*;


public class InterfaceFax extends JFrame implements ActionListener{

private JPanel haut = new JPanel();
private JPanel bas = new JPanel();
private JButton precedent = new JButton(new ImageIcon("images/Précédent.gif"));
private JButton suivant = new JButton(new ImageIcon("images/Suivant.gif"));
private JButton imprimer = new JButton(new ImageIcon("images/Imprimer.gif"));

public InterfaceFax(){
super("Gestion des fax");
initComposants();
this.setSize(500, 500);
this.setResizable(false);
this.setVisible(true);

}
public void initComposants(){
Container c = getContentPane();

precedent.addActionListener(this);
precedent.setMargin(new Insets(0,0,0,0));
precedent.setVisible(true);
haut.add(precedent);

suivant.addActionListener(this);
suivant.setMargin(new Insets(0,0,0,0));
suivant.setVisible(true);
haut.add(suivant);

imprimer.addActionListener(this);
imprimer.setMargin(new Insets(0,0,0,0));
imprimer.setVisible(true);
haut.add(imprimer);

c.add(haut, BorderLayout.NORTH);
c.add(bas, BorderLayout.SOUTH);


}

public void actionPerformed(ActionEvent e){
if(e.getSource()== precedent ){



}

}
public static void main(String[] args){
InterfaceFax fax = new InterfaceFax();
fax.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
[/CODE]
jeudi 8 mai 2008 à 20:15:24 | Re : Visionner des images JAVA

Chatbour

Membre Club
Salut,

voici une solution après quelques modifications de ton code :

import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import java.util.*;

class InterfaceFax extends JFrame implements ActionListener{
    private JPanel haut = new JPanel();
    private JLabel bas = new JLabel();  // je me suis permis de changer le type (plus simple)
    private JButton precedent = new JButton("Precédent");
    private JButton suivant = new JButton("Suivant");
    private JButton imprimer = new JButton("Imprimer");
   
    // un vector qui va contenir toutes les images dans ton répertoire
    private Vector<ImageIcon> vectImages = new Vector<ImageIcon>();
    // indice pour désigner l'image courante
    private int indiceImage = 0;

    public InterfaceFax(){
        super("Gestion des fax");
       
        initVectImages();   // initialiser un tableau d'images
       
        initComposants();
        this.setSize(500, 500);
        this.setResizable(false);
        this.setVisible(true);
    }
   
    /* remplir le tableau d'images vectImages avec les images contenues dans le répertoire ./images */
    private void initVectImages() {
        File tabImages[] = new File("Images").listFiles();
        for(File fichier : tabImages) {
            ImageIcon image = new ImageIcon(fichier.getAbsolutePath());
            vectImages.add(image);
        }
    }
   
    public void initComposants(){
        Container c = getContentPane();

        precedent.addActionListener(this);
        haut.add(precedent);

        suivant.addActionListener(this);
        haut.add(suivant);

        imprimer.addActionListener(this);
        haut.add(imprimer);

        c.add(haut, BorderLayout.NORTH);
        c.add(bas, BorderLayout.CENTER);    // au lieu de SOUTH
    }
   
    private void changerImage() {
        if(indiceImage < 0)
                indiceImage = vectImages.size() - 1;
        if(indiceImage >= vectImages.size())
                indiceImage = 0;
        bas.setIcon(vectImages.get(indiceImage));
    }
   
    public void actionPerformed(ActionEvent e){
        Object source = e.getSource();
        if(source == precedent ){
            indiceImage--;
            changerImage();
            return;
        }
        if(source == suivant) {
            indiceImage++;
            changerImage();
            return;
        }
    }
   
    public static void main(String[] args){
        InterfaceFax fax = new InterfaceFax();
        fax.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}



Cordialement..
jeudi 8 mai 2008 à 21:43:09 | Re : Visionner des images JAVA

punisher999

Wow WOw Wow !!! Merci beaucoup, si j'ai dautres questions, je n'hésiterais pas a poster ici. Quel aide !!
jeudi 8 mai 2008 à 21:47:13 | Re : Visionner des images JAVA

punisher999

Bon, suite à ce message, je suis très sastifait du résultat.

Quelques questions !!!

1. Comment je pourrais centrer les images ?

2. Comment puis-je arriver dans le programme et la première image aparaissent déja ?

3. Comment faire une fonction qui supprimerais une image
vendredi 9 mai 2008 à 00:14:32 | Re : Visionner des images JAVA

punisher999

Quelqu'un a une idée ?

Merci
vendredi 9 mai 2008 à 09:50:40 | Re : Visionner des images JAVA

Chatbour

Membre Club
Bonjour,


pour charger le programme avec une image, il te suffit d'appeler la méthode changerImage() dans le constructeur ou dans la méthode initComponent()..


Supprimer une image ? physiquement ? ou bien la supprimer de vectImages ?
vendredi 9 mai 2008 à 12:21:09 | Re : Visionner des images JAVA

punisher999

Supprimer une image qui supprimerais l'image de l'application ainsi que du dossier ou elle est l'est !!!

Voici mon code :

import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import java.util.*;

public class InterfaceFax extends JFrame implements ActionListener{
    private JPanel haut = new JPanel();
    private JLabel bas = new JLabel();  //
    private JButton precedent = new JButton(new ImageIcon("images/Précédent.gif"));
    private JButton suivant = new JButton(new ImageIcon("images/Suivant.gif"));
    private JButton supprimer = new JButton(new ImageIcon("images/Supprimer.gif"));
    private JButton imprimer = new JButton(new ImageIcon("images/Imprimer.gif"));
    private ArrayList<ImageIcon> images = new ArrayList<ImageIcon>();
    private File tabImages[];
    //indice pour désigner l'image courante
    private int indiceImage = 0;

    public InterfaceFax(){
        super("Gestion des fax");
      

        initImage();
      
        initComposants();
        this.setSize(500, 500);
        this.setResizable(false);
        this.setVisible(true);
       
    }
  
    //Rempli un tableau d'images
    private void initImage() {
        File tabImages[] = new File("test").listFiles();
        for(File fichier : tabImages) {
            ImageIcon image = new ImageIcon(fichier.getAbsolutePath());
            images.add(image);
           
          
        }
       
    }
 
 
  
    public void initComposants(){
       
        //Pour centrer les images
        bas.setHorizontalAlignment(JLabel.CENTER);
        bas.setVerticalAlignment(JLabel.CENTER);
           
        //Pour afficher la première image
        if(images.size() > 0)
            bas.setIcon(images.get(0));
       
   
       
       

        precedent.addActionListener(this);
        precedent.setMargin(new Insets(0,0,0,0));
        haut.add(precedent);

        suivant.addActionListener(this);
        suivant.setMargin(new Insets(0,0,0,0));
        haut.add(suivant);
       
        supprimer.addActionListener(this);
        supprimer.setMargin(new Insets(0,0,0,0));
        haut.add(supprimer);
     
        imprimer.addActionListener(this);
        imprimer.setMargin(new Insets(0,0,0,0));
        haut.add(imprimer);
       
        haut.setBackground(Color.BLACK);
   
       
        add(haut, BorderLayout.NORTH);
        add(bas, BorderLayout.CENTER);
    }
  
    private void changerImage() {
        if(indiceImage < 0)
                indiceImage = images.size() - 1;
        if(indiceImage >= images.size())
                indiceImage = 0;
        bas.setIcon(images.get(indiceImage));
    }
 
  
  
    public void actionPerformed(ActionEvent e){
        Object source = e.getSource();
        if(source == precedent ){
            indiceImage--;
            changerImage();
            return;
        }
        if(source == suivant) {
            indiceImage++;
            changerImage();
            return;
        }
        if(source == supprimer){
       
       
     

    
        }
    }
  
    public static void main(String[] args){
        InterfaceFax fax = new InterfaceFax();
        fax.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}
vendredi 9 mai 2008 à 12:58:24 | Re : Visionner des images JAVA

Chatbour

Membre Club
re,

pour supprimer un élément d'un Vector, utilises la méthode remove()..

pour supprimer physiquement un fichier, il y a la méthode delete de la classe File..


Cette discussion est classée dans : images, java, import, precedent, jbutton


Répondre à ce message

Sujets en rapport avec ce message

Erreur à l'exécution d'un applet [ par Warwick ] BonjourJe vous présente les erreurs que j'ai lors de l'exécution de mon applet java.lang.NullPointerException at java.awt.Container.addImpl(Con Communication entre 2 classes pour une applet [ par Warwick ] Bonjour, je débute le java, et j'ai quelques petits problèmes pour faire communiquer 2 classes entre elles et j'aurais besoin de votre aide...Mon appl JButton, Jpanel et Jframe...Ca marche pas!!! [ par alexglvr ] Bonjour à tous,je suis en train de developper ma premiere appli java, et j'ai le probleme suivant qui me bloque depuis plusieur jours:Je crée une JPan Bouton permettant d'accéder a un sous menu [ par freeze84 ] Bonjour, Jai un menu principal avec dedans 3 Boutons j'aimerais que ces boutons me permettent d'accéder a des sous menu (avec MouseListener). Pouvez v IReport Erreur [ par pressilla ] Bonjour à tous, Je suis toute débutante en génération des états en Java et j'utilise IReport 3.7.3. A cet effet, j'ai importé les .jar suivants : co Bouton effacer [ par walkn ] Bonjour, Je suis debutant en java, et j'aimerai que lors de l'appui sur un bouton, mes champs s'efface. J'ai ecrit cela dans l'action de mon bouton cryptage via AES et transfert UDP [ par babylone78 ] Bonjour, Je veux envoyer un message entre un serveur et un client via le protocole UDP et en cryptant le message avec l'algorithme symétrique AES. swing [ par johnjjj ] bonjour je souhait votre aide j'ai deux classe A contient zone de text JTextField et bouton JButton et Classe B contien bouton JButton() la APEL d'une servlet par une classe java [ par mina24 ] voila j'ai le code suivant qui est une classe mais je veux que cette classe fais appel à une servlet; ou aussi un autre moyen une servlet qui va faire JList de couleur avec Jcombobox, JTextFieldJButton [ par bronx72 ] Bonjour à tous, Je réalise un jeu en java et j'ai un soucis : Mon but est de rentrer le nom d'un joueur dans une JTextField(jusque là ca va), puis de


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,764 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales