Galaxie2007 | Bonjour,
J'ai utilise JTable dans mon interface graphique pour afficher les coordonnes d'une personne dans un tableau.
Code :
- import java.util.ArrayList;
- import java.util.List;
- import java.util.Vector;
- import javax.swing.table.AbstractTableModel;
- public class Model extends AbstractTableModel {
- private Vector<Personne> donnees;
- private final String[] titres;
- public Model(Vector donnees, String titres[]) {
- this.donnees = donnees;
- this.titres = titres;
- }
- public int getRowCount() {
- return this.donnees.size();
- }
- public int getColumnCount() {
- return this.titres.length;
- }
- public String getColumnName(int col){
- return titres[col];
- }
- public boolean isCellEditable(int row, int col) {
- return false;
- }
- //
- public void deleteRow(int rowIndex) {
- donnees.remove(rowIndex);
- fireTableRowsDeleted(rowIndex,rowIndex); //pour notifier la suppression de la ligne à tous les composants ayant posé un listener sur le model
- }
- public Object getValueAt(int arg0, int arg1) {
- Personne p = (Personne) donnees.get(arg0);
- if( arg1 == 1) {
- return p.getPrenom();
- } else if( arg1 == 2) {
- return p.getAdresse();
- }
- else if( arg1 == 0) {
- return p.getNom();
- }
- else {
- return null;
- }
- }
- }
|
Ceux ci est le model de mon tableau . Le code de l'interface graphique est:
Code :
- import java.awt.event.*;
- import java.util.Vector;
- import javax.swing.*;
- public class Gui implements ActionListener {
- private JFrame cadre;
- private JPanel pane;
- private JButton bouton_up,bouton_down;
- private JTable TAB;
- private JScrollPane scrollpane;
- private Vector<Personne> VP,temp_pers;
- private String [] columns = { "Nom", "Prenom","Adresse"};
- private Personne P1,P2,P3,P4;
- public Gui()
- {
- cadre = new JFrame("test" );
- cadre.setSize(200,200);
- pane = new JPanel();
- bouton_up=new JButton("UP" );
- bouton_down=new JButton("DOWN" );
- bouton_up.addActionListener(this);
- bouton_down.addActionListener(this);
- VP = new Vector();
- P1 = new Personne ("AAA","aa","France" );
- P2 = new Personne ("BBB","bb","France" );
- P3 = new Personne ("CCC","cc","France" );
- P4 = new Personne ("DDD","dd","France" );
- VP.add(P1);
- VP.add(P2);
- VP.add(P3);
- VP.add(P4);
- Model MTable = new Model (VP,columns);
- TAB = new JTable(MTable);
- scrollpane= new JScrollPane(TAB,
- ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,
- ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
- pane.add(scrollpane);
- pane.add(bouton_up);
- pane.add(bouton_down);
- cadre.getContentPane().add(pane);
- cadre.setVisible(true);
- }
- public void actionPerformed(ActionEvent arg0) {
- // TODO Auto-generated method stub
- temp_pers=new Vector();
- if (arg0.getSource()==bouton_up)
- {
- }
- if (arg0.getSource()==bouton_down)
- {
- }
- }
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- Gui T = new Gui ();
- }
- }
|
ICI j'ai deux boutons up et down. Lorsque je selectionne ligne n°3 et je clique sur bouton up elle devient a position n°2
et si je clique sur bouton down elle devient a position n°4.
J'ai pas connu les instructions a mettre et qui realise cette operation Est ce qu'il ya quelqu'un qui peut m'aider ....Merci
|