IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants Java Discussion :

[debutant] JTable, JTextField, ActionListener


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 14
    Par défaut [debutant] JTable, JTextField, ActionListener
    Bonjour à tous,
    Je suis bien concient de pas capter grand chose à swing et je sollicite votre aide dans ce domaine
    Donc je vous explique un peu mon probleme,
    Apres avoir créer un Jtable je souhaite initialiser chaque cellule d'un Jtextfield qui aurai pour evenement d'ouvrir une JFrame des lors que l'on clique dessus.
    apres avoir lu peu la java doc, je comprend pas grand chose.

    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
     
    package hdibas;
     
     
    import java.awt.Container;
    import java.awt.Dimension;
    import java.awt.Toolkit;
     
    import javax.swing.AbstractListModel;
    import javax.swing.JFrame;
    import javax.swing.JList;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
    import javax.swing.JTextArea;
    import javax.swing.ListModel;
    import javax.swing.table.DefaultTableColumnModel;
    import javax.swing.table.DefaultTableModel;
     
     
    public class PartieBas extends JFrame{
    	private Container c;	
     
    public PartieBas(){
    	super("test partie bas");
    	initializeComponent();
     
    }
     public void initializeComponent(){
    	 setDefaultCloseOperation(EXIT_ON_CLOSE);
    	 MaTableModel dm = new MaTableModel();
    	 Matable table= new Matable(dm);
    	 table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
    	 JScrollPane scroll = new JScrollPane(table);
    	 table.setTableHeader(null);
         Container content = getContentPane();
         content.add(scroll);
     
     }
     
    public void initializecolumn(String attribut,int num_column){
     
    }
     
    public static void main(String[] args){
    	PartieBas demo = new PartieBas();
    	Toolkit lekit= demo.getToolkit();
    	Dimension dim=lekit.getScreenSize();
    	demo.setBounds(dim.width/4, dim.height/4, dim.width/2, dim.height/2);
    	demo.setVisible(true);
    }
    }
    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
     
    package hdibas;
     
     
    import javax.swing.table.DefaultTableModel;
     
    class MaTableModel extends DefaultTableModel { 
     
     
    	public MaTableModel(){
    	super(6,30);
    	setValueAt("Attribut",0,0);
    	setValueAt("Critere1",1,0);
    	setValueAt("Critere2",2,0);
    	setValueAt("Critere3",3,0);
    	setValueAt("Extraction",4,0);
    	setValueAt("Transformation",5,0);
    	}
    }
    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
    package hdibas;
     
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
     
    import javax.swing.DefaultCellEditor;
    import javax.swing.JFrame;
    import javax.swing.JTable;
    import javax.swing.JTextField;
     
    public class Matable extends JTable implements ActionListener{
     
    	public Matable(MaTableModel dm){
    		super(dm);
    	}
     
    	public void inializecolumn(String attribut,int num_column){
    		JTextField mytextfield = new JTextField();
    		mytextfield.addActionListener((ActionListener) new JFrame("test"));
    		DefaultCellEditor mycell = new DefaultCellEditor(mytextfield);
    		setCellEditor(mycell);
    	}
     
     
    	public void actionPerformed(ActionEvent arg0) {
    		// TODO Auto-generated method stub
     
    	}
    }
    voila mon code en question...

    don mon premier probleme est que je ne trouve pas la methode permettant de rendre ma premier colonne non editable...
    ensuite toute mes cellules ne doivent pas etre editable et il faudrai que lorsqueje click sur une cellule, cela m'ouvre une Jframe...
    merci d'avance pour vos reponses ou piste que vous pourriez bien me suggerer

  2. #2
    Membre chevronné
    Profil pro
    Ingénieur sécurité
    Inscrit en
    Février 2007
    Messages
    574
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2007
    Messages : 574
    Par défaut
    1) De mémoire, setEditable(false);
    2) Tu ajoutes un MouseListener à ta cellule, puis tu ajoutes un JFrame dans ce listener.

  3. #3
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Pour le 2) je dirais plutôt MouseListener sur toute la JTable et dans le mouseClicked utiliser les méthodes rowAtPoint et columnAtPoint pour déterminer la cellule, puis ouvrir une JFrame

Discussions similaires

  1. [debutant] jtable est il comme le datagrid?
    Par 7rouz dans le forum Composants
    Réponses: 1
    Dernier message: 08/03/2007, 15h05
  2. [debutant][JTable] Trier selon une colonne
    Par yupa dans le forum Composants
    Réponses: 3
    Dernier message: 08/08/2005, 11h05
  3. [Debutant][JTable] Suppression d'une ligne
    Par seiryujay dans le forum Composants
    Réponses: 7
    Dernier message: 03/08/2005, 17h15
  4. [debutant] [JTable] ajout d'une ligne
    Par lanfeustdetroll dans le forum Composants
    Réponses: 1
    Dernier message: 29/06/2005, 18h19
  5. [Debutant] [JTable] Fusionner deux cellules
    Par devil26 dans le forum Composants
    Réponses: 4
    Dernier message: 03/05/2005, 13h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo