begin process at 2010 03 12 04:02:53
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Multimédia

 > 

Autre

 > 

utiliser JTable


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

utiliser JTable

samedi 7 mars 2009 à 23:05:37 | utiliser JTable

Manelh

Je doit réaliser une application qui permet de lire la taille d'un tableau,saisir les valeurs(dans un JTable) pour le trier ,mon problème c que je n'arrive pas à récuperer les valeurs à partir du JTable  dans un tableau int[] pour le trie ,

import java.awt.*;
import java.awt.event.*; 
import javax.swing.*;
 
public class tab  extends JFrame {
 JButton b2  = new JButton("Trier");
 JTable tb;
 JTable tb2;
 Integer n;
 JPanel pr;
 int[] T;
 int[] TabTrie;
  JPanel p1=new JPanel();
  JLabel l1=new JLabel("  Introduire la taille du tableau : ");
  JButton b1 = new JButton("Valider");
  JTextField t1=new JTextField();
  public tab(String title){
   super(title);
   addWindowListener(new WindowAdapter(){
    public void windowClosing(WindowEvent e) {
    System.exit(0);
    }});
   GridLayout gl=new GridLayout(2,4);
   //gl.setHgap(5);
   //gl.setVgap(5);
   p1.setLayout(gl);
   p1.add(new JLabel("  "));
   p1.add(new JLabel("  "));
   p1.add(new JLabel("  "));
   p1.add(l1);
   p1.add(t1);
   p1.add(b1);
   JPanel panelPrincipal = new JPanel();
     panelPrincipal.setLayout(new BorderLayout());
     panelPrincipal.add(p1,BorderLayout.NORTH);
    setContentPane(panelPrincipal);
    setBounds(600,400,600,250);
    pack();
    //center();
    b1.addActionListener (new ActionListener(){
     public void actionPerformed(ActionEvent e){
    
      n=new Integer(t1.getText()).intValue();
      System.out.println(n);
     tb = new JTable(1,n);
     // b2 = new JButton("Trier");
      pr=new JPanel();
      pr.setLayout(new BorderLayout());
      pr.add(tb,BorderLayout.WEST);
      pr.add(b2,BorderLayout.EAST);
      add(pr);
      pack();
           
      
      
     }
     

     
    });
    b2.addActionListener (new ActionListener(){
     public void actionPerformed(ActionEvent e){
     //new Traitement("Traitement",new Integer(t1.getText()).intValue());
     
     TabTrie = new int[n];
     T= new int[n];
     System.out.println(n);
     //Récupperer tableau
     for(int i=0;i<n;i++) {
      System.out.println("boucle");
      T[i] =(int)tb.getModel().getValueAt(1,i);
     //T[i] =Integer.parseInt(tb.getValueAt(1,i).toString());
     }

     TabTrie = trietab(T);
     //tb2.setValueAt(TabTrie[1], 0, 1);

     JPanel prs=new JPanel();
     tb2 = new JTable(1,2);
     prs.add(tb2);
      pr.add(prs,BorderLayout.SOUTH);
     
     // add(prs);
      pack();
           
      
      
     }
     

     
    });
    
  }
  public static int[] trietab(int[] tableau){
   /* Déclaration des variables à utiliser pour le tri*/
   int max, iMax, tmp;
   /*
   * Cette première boucle permet de fixer
   * la partie reste à trier du tableau
   */
   for(int j=tableau.length-1; j>0; j--){
   max = tableau[j];
   iMax = j;
   /*
   * Cette partie permet de chercher le maximum
   * dans la partie à trier
   */
   for(int idx=0; idx<=j; idx++){
   if(max < tableau[idx]) {
   max = tableau[idx];
   iMax = idx;
   }
   }
   /* permutation du maximum avec le dernier élément de la partie à trier
   *
   */
   tmp = tableau[j];
   tableau[j] = max;
   tableau[iMax] = tmp;
   }
   /*
   * La méthode retourne le tableau trié en sortie
   */
   return tableau;
   }
  /*void center() {
   Dimension tailleEcran= Toolkit.getDefaultToolkit().getScreenSize();
   int largeurEcran=tailleEcran.width;
   int hauteurEcran=tailleEcran.height;
   int largeur=getSize().width;
   int hauteur=getSize().height;
   int xPos = (largeurEcran-largeur)/2;
   int yPos = (hauteurEcran - hauteur)/2;
   setLocation(xPos,yPos);
  }*/
  public static void main(String[] args) {
   
   tab t= new tab("Traitement d'une table à une dimension");
   t.setVisible(true);
  }

 }

mardi 10 mars 2009 à 12:00:18 | Re : utiliser JTable

amundain

Réponse acceptée !
Salut,

Il y a un souci dans ta boucle de recup des valeurs.
Essaie avec ça :

for (int i=0;i<n;i++){

System.out.println("boucle");
T[i]=Integer.parseInt((String)tb.getValueAt(0,i));

}

Les numéros de lignes et colonnes des JTable commencent à 0...
Autre chose, pour la forme et les bonnes conventions, il estde bon ton en Java de nommer ses classes avec la première lettre en majuscule, et les variables en minuscule (ton tableau de int 'T', par exemple devrait s'appeler 't'...).


A +,

amundain


Java bien,merci.
mardi 10 mars 2009 à 23:25:47 | Re : utiliser JTable

Manelh

Salut amundain !
Je vous remercie beaucoup. ,ça marche mais il me reste un autre problème au niveau de l'affichage du tableau trié ds un JTable , je sais que je doit utiliser la méthode :   public void setValueAt(Object value, int row, int col),mais je ne comprend pas le parametre object value !!?
Merçi d'avance
A+
mercredi 11 mars 2009 à 08:38:21 | Re : utiliser JTable

amundain

Réponse acceptée !
Salut,

L'objet value correspond à ce que tu veux afficher dans ta cellule de jTable.
La méthode prend en paramètre un Object, le niveau le plus élevé de tous les objets, comme ça tu peux lui passer indifféremment du String ou de l'Integer, par exemple :

    setValueAt(55, 0,0);
    setValueAt("55", 0,0);

etc.



A +,

amundain


Java bien,merci.
mercredi 11 mars 2009 à 12:59:46 | Re : utiliser JTable

Manelh

Salut !
Merci beaucoooooooooooooooooooooup!
mais juste une remarque ,lorsque je saisie les valeurs du tableau ,je doit cliquer kk part de la fenêtre de tel façon que la dernière cellule sera sélectionné ,sinon il me singale une exeption! je vous remercie encore une fois
A+


Cette discussion est classée dans : int, p1, tableau, add, jtable


Répondre à ce message

Sujets en rapport avec ce message

inserer un jcheckbox dans un tableau [ par soumia12 ] salut ,j'arrive pas comment inserer un jcheckbox dans jtable sachant que mon tableau et remplisser à partir d'une base de donnée voila mon code:privat JTable et focus/editing + keylistener [ par bob22mael ] Bonjour, Ce que j'aimerais faire est assez simple (en théorie). Il s'agit d'une JTable avec 4 colonnes: -nom produit -commentaire -nombre -prix unitai Demande pour Actions sur des boutons [ par javalang ] Bonjour, les gars !Quelqu'un pourrait-il m'aider? Je suis débutant en Java et je ne sais pas encore mettre de l'ordre dans mes codes.Je vous donne mon Convertir un tableau html en jtable [ par dodji_phpcs ] Bonjour tous le monde , mon problème est le suivant J'aimerais récupérer un tableau dans une page html avec java et ensuite le mettre dans un jtable. Exeception suppression ligne JTable [ par kmtaz ] Bonjour, J'ai réaliser la possibilité de supprimer une ligne sélectionnée sur une JTable à travers un menu popup. La ligne s'efface bien mais une exe Tableau (produits de deux tableaux, scalaire de deux tableau) [ par malabar969 ] Bonsoir, je ne maîtrise pas bien java. je suis débutant. je dois faire un programme avec différentes méthodes de tableau. Il se nomme MonTab. je n'ar probleme d'insertion dans un tableau [ par maxxou56 ] Bonjour tout le monde je suis debutant en programmation mon problème est minime en fait je voudrais faire une insertion dans un tableau mais jai un pe ajouter des entiers dans un tableau a trier dans un ordre croissant [ par maxxou56 ] Bonjour à tous, je souhaiterais ajouter dans un tableau des entiers. Le tableau est triés par ordre croissant. Ainsi pour chaque ajout il me faut trou Jtable sous netbeans [ par xxnameless ] Salut,j'ai une interface graphique qui affiche un tableau et un boutton afficher et Jcombobox qui contient les noms des pays . Je veux que lorsque l'u Tableau [ par alex64100 ] bonjour, je dois réaliser un programme qui accepte un tableau d'entiers saisi au clavier et qui le trie. ma méthode trie est bonne. le problème vie


Nos sponsors


Appels d'offres

Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
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,250 sec (4)

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