Les composants JTable et JScrollBar en java

mohamed sylla -  
trectrec Messages postés 2 Statut Membre -
Bonjour,
Mon probleme concerne les composants JTable.
En fait lorsque le nombre de colonne est eleve(exemple 30 colonne)
le nom des colonnes n'apparait pas entierement.Et pourtant j'ai mis:
JTable table=new JTable();
JScrollBar barre=new JScrollBar(table).
Mais seules les barres de defilement verticales apparaissent.
Veuillez donc me donner plus d'information sur ces composants JTable et JScrollBar.
Merci d'avance.
A voir également:

4 réponses

choubaka Messages postés 39984 Statut Modérateur 2 105
 
essaye un JScrollPane au lieu d'un JScrollBar

Chouba
"Obsédé des travaux manuels non pratiquant"
1
mohamed sylla
 
Merci Chouba pour vos conseils .Je vais aller les tester le plus rapidement possible.C'est que ces composants JTable combine a JScrollBar m'ont longtemps fatigues.
Encore une fois merci pour tout.
0
trectrec Messages postés 2 Statut Membre 1
 
Un JScrollBar est une seul scrollbar. mais toi tu as besoin de deux. donc pour cela delcare une JScrollPane. avec celle ci tu as la scrollbar horizontal et la scrollbar vertical.

Une JScrollPqne est une rectangle
1
choubaka Messages postés 39984 Statut Modérateur 2 105
 
voilà ce qui la javadoc, sorry c'est en anglais

Provides a scrollable view of a lightweight component. A JScrollPane manages a viewport, optional vertical and horizontal scroll bars, and optional row and column heading viewports. You can find task-oriented documentation of JScrollPane in How to Use Scroll Panes, a section in The Java Tutorial. Note that JScrollPane does not support heavyweight components.



The JViewport provides a window, or "viewport" onto a data source -- for example, a text file. That data source is the "scrollable client" (aka data model) displayed by the JViewport view. A JScrollPane basically consists of JScrollBars, a JViewport, and the wiring between them, as shown in the diagram at right.

In addition to the scroll bars and viewport, a JScrollPane can have a column header and a row header. Each of these is a JViewport object that you specify with setRowHeaderView, and setColumnHeaderView. The column header viewport automatically scrolls left and right, tracking the left-right scrolling of the main viewport. (It never scrolls vertically, however.) The row header acts in a similar fashion.

By default, the corners are empty. You can put a component into a corner using setCorner, in case you there is some function or decoration you would like to add to the scroll pane. The size of corner components is entirely determined by the size of the headers and scroll bars that surround them.

To add a border around the main viewport, you can use setViewportBorder. (Of course, you can also add a border around the whole scroll pane using setBorder.)

For the keyboard keys used by this component in the standard Look and Feel (L&F) renditions, see the JScrollPane key assignments.

A common operation to want to do is to set the background color that will be used if the main viewport view is smaller than the viewport, or is not opaque. This can be accomplished by setting the background color of the viewport, via scrollPane.getViewport().setBackground(). The reason for setting the color of the viewport and not the scrollpane is that by default JViewport is opaque which, among other things, means it will completely fill in its background using its background color. Therefore when JScrollPane draws its background the viewport will usually draw over it.

By default JScrollPane uses ScrollPaneLayout to handle the layout of its child Components. ScrollPaneLayout determines the size to make the viewport view in one of two ways:

If the view implements Scrollable a combination of getPreferredScrollableViewportSize, getScrollableTracksViewportWidth and getScrollableTracksViewportHeightis used, otherwise
getPreferredSize is used.

Chouba
"Obsédé des travaux manuels non pratiquant"
0
Hades5k
 
Il ne pourrait pas mettre des JPanel dans un GridLayout de 1 colonne et plusieurs rangées?
Il pourrait ainsi régler chacune des rangées à sa guise non?
0
choubaka Messages postés 39984 Statut Modérateur 2 105
 
il pourrait, mais ça risque de devenir du jabol

Chouba
"Obsédé des travaux manuels non pratiquant"
0