Il y a 31 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici

 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet :

java : interface graphique

 
n°38084
Magniacx
Posté le 20-03-2006 à 19:44:48  profilanswer
 

Encore moi pour une question sur java :p
 
En fait j'ai pas besoin de tout le code mais juste une astuce ...
 
Le truc c'est que je dois afficher des tableaux, mais la longueur change tout le temps, donc je me demande comment je peux faire x Textfields avec une boucle ?
 
Quelqu'un a une idée ?
 
donc un truc genre :
 
while(i < x)
{
   new TextField
}

n°38086
LostSoul
Manieur de hache
Posté le 20-03-2006 à 20:34:15  profilanswer
 

tu peux pas modifier un gridpane dynamiquement ?


---------------
In Girum Imus Nocte Et Consumimur Igni
In-Wonderland - Blog - Start64
n°38196
Magniacx
Posté le 22-03-2006 à 18:22:41  profilanswer
 

En fait, j'ai trouvé comment faire, en faisant un gridLayout y'a moyen, mais je ne sais pas comment associer une fonction à chaque textfield créé ...

n°38213
spalax
born of a broken man
Posté le 22-03-2006 à 21:17:28  profilanswer
 

ben fait afficher le tableau directement c'est plus facile lol
 
explemet avec du sql recuperer dans un tableau pour afficher le tt
 

Code :
  1. private void creerListing(String requete){
  2.         try{
  3.             jtListing = new JTable(AccessGen.creerTableModel(requete));
  4.             jtListing.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
  5.             defilant = new JScrollPane(jtListing);
  6.             pan2.removeAll();
  7.             pan2.add(defilant);
  8.             menu.getContainer().repaint();
  9.             menu.show();
  10.         }
  11.         catch(SQLException ex){
  12.             JOptionPane.showMessageDialog(null,ex.getMessage());}
  13.        
  14.     }


 
 

Code :
  1. package Serieh;
  2. import javax.swing.table.*;
  3. import java.util.*;
  4. public class MyTableModel extends AbstractTableModel {
  5.     private Vector nomCol = new Vector();
  6.     private Vector contenu = new Vector();
  7.     private Vector objetTypes = new Vector();
  8.    
  9.     public MyTableModel(Vector col, Vector lig, Vector types) {
  10.         nomCol = col;
  11.         contenu = lig;
  12.         objetTypes = types;
  13.     }
  14.    
  15.     public int getColumnCount() {
  16.         return nomCol.size();
  17.     }
  18.    
  19.     public int getRowCount() {
  20.         return contenu.size();
  21.     }
  22.     public String getColumnName(int col){
  23.         return (String) nomCol.elementAt(col);
  24.     }
  25.     public Object getValueAt(int row, int col) {
  26.         Vector vect = (Vector)(contenu.elementAt(row));
  27.         return vect.elementAt(col);
  28.     }
  29.     public Class getColumnClass(int c)
  30.     { return (objetTypes.elementAt(c)).getClass();
  31.     }
  32.    
  33. }


 

Code :
  1. package Serieh;
  2. import java.awt.* ;
  3. import java.awt.event.* ;
  4. import javax.swing.* ;
  5. import java.sql.* ;
  6. import java.util.* ;
  7. public class AccessGen {
  8.     private static Connection connec=null;
  9.    
  10.     public static Connection getConnec(){
  11.         return connec;
  12.     }
  13.    
  14.     public static void connecter(String db, String user, String pass) throws SQLException {
  15.        
  16.         try
  17.         {Class.forName("sun.jdbc.odbc.JdbcOdbcDriver" ) ;
  18.          connec = DriverManager.getConnection("jdbc:odbc:"+db,user,pass);
  19.         }
  20.        
  21.         catch (ClassNotFoundException ex)
  22.         {ex.printStackTrace() ;
  23.         }
  24.     }
  25.    
  26.     public static void deconnecter() throws SQLException
  27.     {connec.close() ;
  28.     }
  29.        
  30.     public static int executerInstruction(String instruction) throws SQLException {
  31.         Statement stat1=connec.createStatement() ;
  32.         int nbIns=stat1.executeUpdate(instruction) ;
  33.         return nbIns ;
  34.     }
  35.    
  36.    
  37.    
  38.     public static MyTableModel creerTableModel(String requete) throws SQLException {
  39.         Statement stat=connec.createStatement() ;
  40.         ResultSet donnees= stat.executeQuery(requete) ;
  41.         Vector nomColonnes=creerVectorNomColonnes(donnees) ;
  42.         Vector lignes = creerVectorLignes(donnees) ;
  43.         Vector objetTypes = creerObjetTypes(donnees) ;
  44.         MyTableModel model = new MyTableModel(nomColonnes, lignes, objetTypes) ;
  45.        
  46.         return model;
  47.     }
  48.    
  49.    
  50.     public static Vector creerVectorNomColonnes(ResultSet donnees) throws SQLException {
  51.         ResultSetMetaData meta = donnees.getMetaData() ;
  52.         Vector nomColonnes = new Vector() ;
  53.         for (int i=1 ;i<=meta.getColumnCount() ;i++)
  54.         {nomColonnes.addElement(meta.getColumnName(i)) ;}
  55.        
  56.         return nomColonnes ;
  57.     }
  58.    
  59.    
  60.     public static Vector creerVectorLignes(ResultSet donnees) throws SQLException {
  61.         ResultSetMetaData meta = donnees.getMetaData();
  62.         Vector nomColonnes = new Vector() ;
  63.         Vector lignes = new Vector() ;
  64.         while (donnees.next())
  65.         {lignes.addElement(getNextRow(donnees, meta)) ;}
  66.         return lignes ;
  67.     }
  68.    
  69.        
  70.     private static Vector getNextRow(ResultSet donnees, ResultSetMetaData meta) throws SQLException {
  71.         Vector ligneCourante = new Vector() ;
  72.         String stringLu ;
  73.         int entierLu ;
  74.         double doubleLu ;
  75.         boolean booleenLu ;
  76.         java.util.Date dateLue ;
  77.        
  78.         for (int i=1 ;i<=meta.getColumnCount() ;i++)
  79.         {switch (meta.getColumnType(i)) {
  80.              case Types.VARCHAR : stringLu = donnees.getString(i) ;
  81.              ligneCourante.addElement(donnees.wasNull()?null :stringLu);
  82.              break ;
  83.            
  84.              case Types.CHAR : stringLu = donnees.getString(i) ;
  85.              ligneCourante.addElement(donnees.wasNull()?null :stringLu);
  86.              break ;
  87.            
  88.              case Types.INTEGER : entierLu = donnees.getInt(i) ;
  89.              ligneCourante.addElement(donnees.wasNull()?null: new Integer(entierLu)) ;
  90.              break ;
  91.            
  92.              case Types.DOUBLE : doubleLu = donnees.getDouble(i) ;
  93.              ligneCourante.addElement(donnees.wasNull()?null :new Double(doubleLu)) ;
  94.              break ;
  95.            
  96.              case Types.TIMESTAMP : dateLue = donnees.getDate(i) ;
  97.              ligneCourante.addElement(donnees.wasNull()?null :dateLue);
  98.              break ;
  99.            
  100.              case Types.BIT : booleenLu=donnees.getBoolean(i) ;
  101.              ligneCourante.addElement(donnees.wasNull()?null :new Boolean(booleenLu)) ;
  102.              break ;
  103.          }
  104.         }
  105.        
  106.         return ligneCourante ;
  107.     }
  108.    
  109.    
  110.     private static Vector creerObjetTypes(ResultSet donnees) throws SQLException {
  111.         ResultSetMetaData meta= donnees.getMetaData() ;
  112.         Vector objetTypes = new Vector() ;
  113.         String stringLu="bidon";
  114.         int entierLu=1 ;
  115.         double doubleLu = 1.0 ;
  116.         boolean booleenLu = true ;
  117.         java.util.Date dateLue = new java.util.Date() ;
  118.        
  119.         for (int i=1 ;i<=meta.getColumnCount() ;i++)
  120.         {switch (meta.getColumnType(i)) {
  121.              case Types.VARCHAR : objetTypes.addElement(stringLu) ;
  122.              break ;
  123.            
  124.              case Types.CHAR : objetTypes.addElement(stringLu) ;
  125.              break ;
  126.            
  127.              case Types.INTEGER : objetTypes.addElement(new Integer(entierLu)) ;
  128.              break ;
  129.            
  130.              case Types.DOUBLE: objetTypes.addElement(new Double(doubleLu)) ;
  131.              break ;
  132.            
  133.              case Types.TIMESTAMP : objetTypes.addElement(dateLue) ;
  134.              break ;
  135.            
  136.              case Types.BIT: objetTypes.addElement(new Boolean(booleenLu)) ;
  137.              break ;
  138.          }
  139.         }
  140.        
  141.         return objetTypes ;
  142.     }
  143.    
  144.     public static Vector creerVecteur1Colonne(String requete) throws SQLException {
  145.         Statement stat=connec.createStatement() ;
  146.         ResultSet donnees= stat.executeQuery(requete) ;
  147.         ResultSetMetaData meta = donnees.getMetaData() ;
  148.         Vector uneColonne= new Vector() ;
  149.         String stringLu ;
  150.         int entierLu ;
  151.         double doubleLu ;
  152.         boolean booleenLu ;
  153.         java.util.Date dateLue ;
  154.        
  155.         while (donnees.next())
  156.         {switch (meta.getColumnType(1)) {
  157.              case Types.VARCHAR : stringLu = donnees.getString(1) ;
  158.              uneColonne.addElement(donnees.wasNull() ?null :stringLu) ;
  159.              break ;
  160.            
  161.              case Types.TIMESTAMP : dateLue = donnees.getDate(1) ;
  162.              uneColonne.addElement(donnees.wasNull() ?null :dateLue) ;
  163.              break ;
  164.            
  165.              case Types.CHAR : stringLu = donnees.getString(1) ;
  166.              uneColonne.addElement(donnees.wasNull() ?null :stringLu) ;
  167.              break ;
  168.            
  169.              case Types.INTEGER : entierLu = donnees.getInt(1) ;
  170.              uneColonne.addElement(donnees.wasNull() ?null :new Integer(entierLu)) ;
  171.              break ;
  172.            
  173.              case Types.DOUBLE : doubleLu = donnees.getDouble(1) ;
  174.              uneColonne.addElement(donnees.wasNull() ?null :new Double(doubleLu)) ;
  175.              break ;
  176.            
  177.              case Types.BIT : booleenLu = donnees.getBoolean(1) ;
  178.              uneColonne.addElement(donnees.wasNull() ?null :new Boolean(booleenLu)) ;
  179.              break ;
  180.          }
  181.         }
  182.         return uneColonne ;
  183.     }
  184. }


 
EDIT: si tu veux je peux te sender tout le bazar pour que tu vois l'apli tourner et te rendre compte de quoi fait quoi


Message édité par spalax le 22-03-2006 à 21:27:10
n°38699
Magniacx
Posté le 03-04-2006 à 14:11:09  profilanswer
 

Trouvé : GridLayout + TextField[]


Aller à :
Ajouter une réponse