Bouton prend le contenue de liste de jcobobox

migalou17 Messages postés 15 Date d'inscription lundi 18 décembre 2000 Statut Membre Dernière intervention 6 janvier 2009 - 4 janv. 2009 à 12:32
migalou17 Messages postés 15 Date d'inscription lundi 18 décembre 2000 Statut Membre Dernière intervention 6 janvier 2009 - 6 janv. 2009 à 22:59
salut,
svp j'ai un programme qui affiche le contenu d'ue base de donné dans des jedotorpane(ensemble question de vant chaqun un combobox) jai  fait un bouton 
void jToggleButton1_actionPerformed(ActionEvent e) {


  }
je veut si j'appuit sur ce bouton il prend le contenue des jcombobox.


comment faire car les jcombobox se font d'une facon automatique dans private void jbInit() throws Exception

package a;


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.SQLException;
import java.sql.*;
import javax.swing.border.*;




/**
 * Title:

 * Description:

 * Copyright: Copyright (c) 2008

 * Company:

 * @author not attributable
 * @version 1.0
 */


public class Frame2 extends JFrame {
  JPanel contentPane;
 /* JPanel  formu = new JPanel ();
   JScrollPane t = new JScrollPane(formu);
  */ JEditorPane [] textField=null;
JComboBox[] combobox=null;


  JScrollPane jScrollPane1 = new JScrollPane();
  JPanel jPanel1 = new JPanel();
  JTextField jTextField1 = new JTextField();
  JTextField jTextField2 = new JTextField();
  JTextField jTextField3 = new JTextField();
  JTextField jTextField4 = new JTextField();
  JTextField jTextField5 = new JTextField();
  TitledBorder titledBorder1;
  JToggleButton jToggleButton1 = new JToggleButton();


 


  //Construct the frame
  public Frame2() throws ClassNotFoundException, SQLException {
    enableEvents(AWTEvent.WINDOW_EVENT_MASK);
    try {
      jbInit();


 }
    catch(Exception e) {
      e.printStackTrace();
    }


 


  }




  //Component initialization
  private void jbInit() throws Exception  {
    contentPane = (JPanel) this.getContentPane();
    titledBorder1 = new TitledBorder("");
    contentPane.setLayout(null);
    this.setContentPane(contentPane);
    this.setSize(new Dimension(800, 700));
    this.setState(Frame.NORMAL);
    this.setTitle("Module 1");
    /* t.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
   t.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
   formu.setLayout(null);
  getContentPane().add(t);
        t.getViewport().add(formu, null);
*/


        bd b =new bd();
   b.connecter();
   Statement st = DriverManager.getConnection("jdbc:odbc:u","u","aaaa").createStatement();


   ResultSet rs = st.executeQuery("select * from module1");


   textField = new   JEditorPane[200];
combobox= new JComboBox[200];
int i=0;
   String[] infos = {"0","1","2","3","4"};
while(rs.next()){
  textField[i] = new    JEditorPane();
  combobox[i] =new JComboBox();


  textField[i].setName("aa"+i);
combobox[i].setName("aa"+i);
   for (int j = 0; j < infos.length; j++) {
     combobox[i].addItem(infos[j]);
   }
    combobox[i].setFont(new java.awt.Font("Dialog", 1, 14));


  combobox[i].setBounds(new Rectangle(700,(50+i*100),50, (25)));


  String a=rs.getString(2);


  if(a.endsWith("?")||a.endsWith("."))
{
    textField[i].setBounds(new Rectangle(12,(30+i*100),660, (70)));
    combobox[i].setVisible(true);
}
else
    {
      combobox[i].setVisible(false);
       textField[i].setBounds(new Rectangle(12,(30+i*100),660, (30)));
      textField[i].setFont(new java.awt.Font("SansSerif", 1, 12));
    }
  jPanel1.add(textField[i], null);
  jPanel1.add(combobox[i], null);


  textField[i].setText(a);


i++;


}


    jScrollPane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
    jScrollPane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
    jScrollPane1.setViewport(null);
    jScrollPane1.setViewportBorder(BorderFactory.createLineBorder(Color.black));
    jScrollPane1.setDebugGraphicsOptions(0);
    jScrollPane1.setDoubleBuffered(true);
    jScrollPane1.setMinimumSize(new Dimension(23, 23));
    jScrollPane1.setToolTipText("");
    jScrollPane1.setVerifyInputWhenFocusTarget(true);
    jScrollPane1.setBounds(new Rectangle(13, 30, 750, 589));
    jPanel1.setBackground(SystemColor.controlShadow);
    jPanel1.setEnabled(false);
    jPanel1.setForeground(Color.black);
    jPanel1.setBorder(BorderFactory.createEtchedBorder());
    jPanel1.setDebugGraphicsOptions(0);
    jPanel1.setNextFocusableComponent(jTextField3);
    jPanel1.setOpaque(true);
    jPanel1.setLayout(null);
    jTextField1.setText("jTextField1");
    jTextField1.setBounds(new Rectangle(190, 57, 57, 21));
    jTextField2.setText("jTextField2");
    jTextField2.setBounds(new Rectangle(197, 152, 57, 21));
    jTextField3.setText("jTextField3");
    jTextField3.setBounds(new Rectangle(194, 264, 57, 21));
    jTextField4.setText("jTextField4");
    jTextField4.setBounds(new Rectangle(226, 699, 57, 21));
    jTextField5.setText("jTextField5");
    jTextField5.setBounds(new Rectangle(193, 736, 57, 21));
    contentPane.setBackground(SystemColor.controlText);
    contentPane.setMaximumSize(new Dimension(32767, 32767));
    //jPanel1.add(jScrollPane1, null);
    jPanel1.setPreferredSize(new Dimension(1000, 300 + i * 60));
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    jToggleButton1.setBackground(Color.black);
    jToggleButton1.setFont(new java.awt.Font("Dialog", 1, 11));
    jToggleButton1.setForeground(Color.red);
    jToggleButton1.setText("Sauvgarder");
    jToggleButton1.setBounds(new Rectangle(361, 629, 103, 32));
    jToggleButton1.addActionListener(new Frame2_jToggleButton1_actionAdapter(this));
    contentPane.add(jScrollPane1, null);
    contentPane.add(jToggleButton1, null);
    jScrollPane1.setViewportView(jPanel1);


 


 


  }


  void jToggleButton1_actionPerformed(ActionEvent e) {


  }


}


class Frame2_jToggleButton1_actionAdapter implements java.awt.event.ActionListener {
  Frame2 adaptee;


  Frame2_jToggleButton1_actionAdapter(Frame2 adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jToggleButton1_actionPerformed(e);
  }
}

7 réponses

cs_hidalg007 Messages postés 11 Date d'inscription mercredi 31 octobre 2007 Statut Membre Dernière intervention 10 janvier 2010
4 janv. 2009 à 13:14
Bhen tu fais " JComboBox.getSelectedItem()"
0
chris081 Messages postés 90 Date d'inscription mercredi 24 décembre 2008 Statut Membre Dernière intervention 4 février 2009
4 janv. 2009 à 16:44
Salut
Tu as deja la reponse dans ton code:

combobox= new JComboBox[200];
int i=0;
String[] infos = {"0","1","2","3","4"};
while(rs.next()){
textField[i] = new JEditorPane();
combobox[i] =new JComboBox();

textField[i].setName("aa"+i);
combobox[i].setName("aa"+i);
for (int j = 0; j < infos.length; j++) {
combobox[i].addItem(infos[j]);
}
...


La ligne
combobox[i].addItem(infos[j]) ajoute les items, un par un, du tableau infos au combobox. Alors recupere le tableau au complet, au lieu de recuperer les items un par un. Si tu veux les recupere un par un, alors tu references ton JComboBox dont tu veux avoir les données, puis tu utilises une boucle dans le style:

for (int k=0; k<combobox.getitemcount();k++){>

Object o = comboBox.getItemAt(k);

}</combobox.getitemcount();k++){>
0
chris081 Messages postés 90 Date d'inscription mercredi 24 décembre 2008 Statut Membre Dernière intervention 4 février 2009
4 janv. 2009 à 16:50
bon, ca n'a pas affiché. Le corps de la boucle est le suivant:

for(int k=0; k<comboBox.getItemCount();k++){
Object obj = comboBox.getItemAt(k);
} // fin for
0
migalou17 Messages postés 15 Date d'inscription lundi 18 décembre 2000 Statut Membre Dernière intervention 6 janvier 2009
4 janv. 2009 à 17:05
hhh

jai un ensemble de combobox et se desinent d'une facon automatique a l'aide d'un boucle dans jbinit.
qui ont un nom aa1,aa2....
on ne peut pas le voir audehor de cet fonction
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
migalou17 Messages postés 15 Date d'inscription lundi 18 décembre 2000 Statut Membre Dernière intervention 6 janvier 2009
4 janv. 2009 à 17:11
et moi je veux utilisern le bouton jToggleButton1 comme bouton enregistrer prend les éléments selectionnées et les stock dans une base de donné
0
chris081 Messages postés 90 Date d'inscription mercredi 24 décembre 2008 Statut Membre Dernière intervention 4 février 2009
6 janv. 2009 à 02:25
utilise un objet pour stocker les donnes contenues dans tes JComboBox à l'extérieur de la fonction:

Object o [] = new Object [5];
private void jbinit(){

o = new Object [comboBox.getItemCount();

for(int k=0; k&ltcomboBox.getItemCount();k++){

o[i]=comboBox.getItemAt(k);

} // fin for

} // fin : jbinit


void jToggleButton1_actionPerformed(ActionEvent e) {

// ici, tu inseres le code que tu as besoin pour
// enregistrer les data. J'utilise toString()
// pour te faire comprendre l'idée.

System.out.println (this.o[0].toString());

} // fin jToggleButton1_actionPerformed(ActionEvent)


J'espere que ca reponds à ta question, ou du moins, que ca t'aide un petit peu.
chris081
0
migalou17 Messages postés 15 Date d'inscription lundi 18 décembre 2000 Statut Membre Dernière intervention 6 janvier 2009
6 janv. 2009 à 22:59
merci
0
Rejoignez-nous