Bonjour,
quel est le code java permettant d'afficher un tableau dans un scrollbar et d'afficher le scrollbar horizontal et le scrollbar vertical si la taille du tableau est grande?
Merci.
Bonjour,
quel est le code java permettant d'afficher un tableau dans un scrollbar et d'afficher le scrollbar horizontal et le scrollbar vertical si la taille du tableau est grande?
Merci.
Bonjour, il faut mettre ta JTable dans un JScrollPane.
Par exemple :
Et c'est tout
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 JTable table = new JTable(); JScrollPane scrollPane = new JScrollPane(table); taFrame.add(scrollPane);
Les composants SWING | Les layouts SWING | doc javase 6 | CORBA | XSLT | BDD Derby embarquée
Pensez au bouton une fois le problème résolu
Comment utiliser la fameuse balise CODE ?
Bonjour,
comment utiliser JTable?j'ai un tableau comment je peut l'afficher sur mon interface(dans le JScrollPanel)?et comment faire apparaitre le scrollbar horizontal et vertical si la taille du mon tableau est grande?
Aidez moi svp.
How to Use Tables
le plus simple c'est d'utiliser le constructeur : JTable(Object[][] rowData, Object[] columnNames)
Comme précisé dans mon message précédent.
Les composants SWING | Les layouts SWING | doc javase 6 | CORBA | XSLT | BDD Derby embarquée
Pensez au bouton une fois le problème résolu
Comment utiliser la fameuse balise CODE ?
Bonjour,
Merci pour votre aide mais je ne sais pas comment utilser JTable.J'ai essayé differents codes que j'ai trouvé sur internet mais ça n'a pas marché.
J'ai une requette sql qui me retourne une table avec 21 colonnes,svp donnez moi le code complet pour mettre le resultat de ma requette dans une JTable et d'ajouter des scrollbar car la taille est grande.
Aidez moi c'est urgent!
Tu as déjà toutes les réponses à tes questions !
On veut bien t'aider mais si tu n'es pas plus précis, on ne peut pas grand chose pour toi.
Et arrête de dire que c'est urgent : on fait tous notre maximum pour répondre aux questions. Un peu de patience, et lit ce qui t'a été donné
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Que la force de la puissance soit avec le courage de ta sagesse.
Au lieu de dire que ça n'a pas marché et demander qu'on te donne le code complet, il faut donner le code que tu as fait et qui n'a pas fonctionné pour qu'on puisse le corriger. Le but du forum n'est pas de tout te faire, mais de t'aider.
Essai d'être plus précis, je doute que ta requête SQL te renvoi une table, plutôt un ResultSet non? Si c'est bien ça, voila un autre lien qui peut t'aider : Comment parcourir un ResultSet ?
Si tu ne comprends pas, pose des questions précises sur ce que tu ne comprends pas dans les liens qu'on te donne. Ca n'avance pas si redonne ton sujet initial sans tenir compte de nos réponses.
Les composants SWING | Les layouts SWING | doc javase 6 | CORBA | XSLT | BDD Derby embarquée
Pensez au bouton une fois le problème résolu
Comment utiliser la fameuse balise CODE ?
Bonjour,
voilà ma requette
stmt = connect.createStatement();
result = stmt.executeQuery("select * from equipement);
je veux mettre cette résultat dans une JTable et l'afficher.
Ma table est sous oracle 9i.
Désolée j'ai dit que c'est urgent car je suis en stage et il faut que je termine dans 2 jours.
Qu'est-ce que tu ne comprends pas dans les liens?
Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 result = stmt.executeQuery("select * from equipement); while(result.next()) { result.getInt("nomColonne1"); result.getString("nomColonne2"); result.getDate("nomColonne3"); result.getObject("nomColonne4"); }
Les composants SWING | Les layouts SWING | doc javase 6 | CORBA | XSLT | BDD Derby embarquée
Pensez au bouton une fois le problème résolu
Comment utiliser la fameuse balise CODE ?
Bonjour,
oui ok mais comment mettre ce resultat dans la JTable?
Les composants SWING | Les layouts SWING | doc javase 6 | CORBA | XSLT | BDD Derby embarquée
Pensez au bouton une fois le problème résolu
Comment utiliser la fameuse balise CODE ?
Bonjour,
j'ai arrivé à mettre remplir la JTable mais je sais pas comment modifier la taille des colonnes et des lignes si les champs retournés par ma requette sont de taille grande.(ma requette me retourne 21 colonnes et parfois une case contient plusieurs caractères)
Voilà mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 public void affichage() { table = remplirTable(); //la table sera initialisée par la liste des administrateurs envoyée par la fct 'remplirTable()' table.setPreferredScrollableViewportSize(new Dimension(500, 120)); //prendre la dimension de la table // Un panneau, placé dans la fenêtre JScrollPane panneau = new JScrollPane(table, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane. HORIZONTAL_SCROLLBAR_AS_NEEDED); //mettre la table dans ascenceur panneau.setPreferredSize(new Dimension(550, 80)); this.setLocation(100, 100); ContentPane.add(panneau, BorderLayout.CENTER); } JTable remplirTable() { Vector tabLignes=new Vector(), nomCols=new Vector(); int i; System.out.println("remplirTableeeeeeeeeeeeeeeee"); try { stmt=connect.createStatement(); result = stmt.executeQuery("select * from equipement " ); ResultSetMetaData md = result.getMetaData(); System.out.println("md^="+md); nomCols = new Vector(); for( i=1; i<=md.getColumnCount (); i++) { nomCols.add(md.getColumnLabel(i)); } // Mémoriser le résultat dans la JTable while( result.next()) { //placer les valeurs dans Vector ligne Vector ligne=new Vector(); //le 3 designe le nombre de colonnes qui doit etre connu dans la table for(i=1; i<=md.getColumnCount (); i++) { String ch=result.getString(i); ligne.add(ch); } tabLignes.add(ligne); } } catch(Exception e) { System.out.print("erreur1 "+e.getMessage());//récuperer le message d'erreur en cas d'erreur } return new JTable(tabLignes,nomCols);//type de retour qui initialise le JTable par la liste des vecteur envoyées remplis des tables }
Tu as 2 solutions :
tu utilises la méthode de JTable setAutoResizeMode
tu affectes à chaque collone une taille initiale via la méthode :ps : merci d'éditer ton post pour ajouter la balise CODE (# dans l'édition du message )
Code : Sélectionner tout - Visualiser dans une fenêtre à part table.getColumnModel().getColumn(index).setPreferredWidth(largeur)
Les composants SWING | Les layouts SWING | doc javase 6 | CORBA | XSLT | BDD Derby embarquée
Pensez au bouton une fois le problème résolu
Comment utiliser la fameuse balise CODE ?
Désolé mais ça n'a pas marché.est ce qu'il y a d'autre solution?
Et comment modifier la taille d'une ligne?
Qu'est-ce qui n'a pas marché? ça aurait du fonctionner, peut-on voir le code que tu as utilisé?
Pour changer la hauteur des lignes, tu as les méthodes setRowHeight(int rowHeight et setRowHeight(int row, int rowHeight).
Les composants SWING | Les layouts SWING | doc javase 6 | CORBA | XSLT | BDD Derby embarquée
Pensez au bouton une fois le problème résolu
Comment utiliser la fameuse balise CODE ?
Bonjour,
bon merci ça marche mais la taille de la 1ère ligne qui contient les noms des colonnes ne change pas.
Voilà mon code:
Une autre question svp,comment modifier la taille de l'écriture dans JTable?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 TableColumn column = null; for (int i = 0; i < table.getColumnCount(); i++) { column = table.getColumnModel().getColumn(i); table.setRowHeight(i,50); column.setPreferredWidth(200); }
N'oublie pas d'utiliser la balise CODE (icône # dans l'édition du message).
Dans ton code tu affectes pour chaque colonne la hauteur de la ligne ayant le même index
Il faudrait plutôt faire :Pour changer la police caractères, tu peux faire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 TableColumn column = null; for (int i = 0; i < table.getColumnCount(); i++) { column = table.getColumnModel().getColumn(i); column.setPreferredWidth(200); } table.setRowHeight(50);Pour changer la hauteur de la ligne contenant le nom des colonnes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 table.setFont( new Font(....) ); // ou table.setFont(table.getFont().deriveFont(Font.BOLD));
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 JLabel l=(JLabel)table.getTableHeader().getDefaultRenderer(); l.setPreferredSize(new Dimension(0,30));
Les composants SWING | Les layouts SWING | doc javase 6 | CORBA | XSLT | BDD Derby embarquée
Pensez au bouton une fois le problème résolu
Comment utiliser la fameuse balise CODE ?
Merci pour votre aide.
J'ai mis :
table.setFont( new java.awt.Font("Dialog", 3, 14));
mais le police de la première ligne qui contient les noms des colonnes ne change,pas seulement les autres lignes qui changent.
Il faut bien comprendre que le header n'est pas le même objet que les autres lignes de la JTable.
Il faut appliquer le même changement que celui pour la hauteur des noms de colonnes.
C'est un mix des 2 derniers codes donnés.
Les composants SWING | Les layouts SWING | doc javase 6 | CORBA | XSLT | BDD Derby embarquée
Pensez au bouton une fois le problème résolu
Comment utiliser la fameuse balise CODE ?
Vous voulez dire écrire ce code:
table.setFont( new java.awt.Font("Dialog", 3, 14));
JLabel l=(JLabel)table.getTableHeader().getDefaultRenderer();
l.setPreferredSize(new Dimension(0, 50));
l.setFont(new java.awt.Font("Dialog", 3, 14));
mais ça change rien.Svp expliquer moi clairement comment procéder?
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager