bonjour,
voila j'ai écrit une classe extends de JPanel contenant un JScrollPane et un JTable
mon code ressemble donc a cela
bon j'arrive à connaitre ou l'utilisateur click par contre je n'arrive pas à savoir quel est a position du table dans le scrollPane:
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 public class DataFileTable extends JPanel implements MouseListener { private JTable table; private DataFileTableModel model; private Font f=new Font("SanSerif",Font.PLAIN,24); private int ligne = 0; private int column = 0; private Point point= new Point(0,0); public DataFileTable() { setFont(f); setLayout(new BorderLayout()); //create model model = new AbstractTableModel(); //create table table=new JTable(); //config table table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); table.setSelectionBackground(new Color(255, 193, 193)); table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); table.getTableHeader().setReorderingAllowed(false); table.setModel(model); table.createDefaultColumnsFromModel(); //scroller JScrollPane scrollPane = new JScrollPane(table, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS); add(scrollPane); table.addMouseListener(this); } public void mouseClicked (MouseEvent e) { point = e.getPoint (); column = table.columnAtPoint (point)+1; ligne = table.rowAtPoint (point)+1; } public void mouseExited (MouseEvent e) { } public void mousePressed (MouseEvent e) { } public void mouseReleased (MouseEvent e) { } public void mouseEntered (MouseEvent e) { } }
En gros la question quel est la cellule que je vois en haut à gauche?
ou simplement quel est le numero de la ligne que je vois en haut?
et puis comment connaitre la taille de la ligne (en hauteur) -> pour déterminer combien de ligne il voit?
merci beaucoup
Partager