oceanecoin | bonjour!!
j'ai un petit soucis avec mes JRadioButton dont les labels sont issus d'une requete. je n'arrive pas à recuperer ces labels..
voici mon code
Code :
- import java.awt.*;
- import java.awt.event.*;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.Statement;
- import javax.swing.*;
- public class ajouter extends JFrame implements ActionListener
- {
- private Button bouton;
- private TextField nom, prix;
- private JPanel panel;
- private JRadioButton box;
- private ButtonGroup group;
- private JLabel lab;
- private JFrame frame;
- public ajouter()
- {
- super();
- panel = new JPanel();
- panel.setLayout(new FlowLayout(FlowLayout.LEFT,4,2));
- nom = new TextField("nom", 10);
- prix = new TextField("prix en ", 10);
- nom.setBackground(Color.yellow);
- panel.add(nom);
- panel.add(prix);
- String pilote = "com.mysql.jdbc.Driver";
- try
- {
- //Chargement de mon pilote
- Class.forName(pilote);
- //Connexion à ma base mysql avec mon login et mot de passe ( à vous de changer cela)
- Connection connexion = DriverManager.getConnection("jdbc:mysql://localhost/creperie","root","yesss" );
- //Création de mon statement qui va me permettre d'executer mes requetes
- Statement instruction = connexion.createStatement();
- //Ma table s'appelle creperie et tout ce qui reste dépend d'elle
- //Vous devez changer certaines infos comme le nom de la table et celui des colonnes
- ResultSet resultat = instruction.executeQuery("SELECT DISTINCT type FROM carte" );
- JLabel lab = new JLabel("type" );
- panel.add(lab);
- while(resultat.next())
- {
- String resul = resultat.getString("type" );
- box = new JRadioButton(resul, false);
- group = new ButtonGroup();
- group.add(box);
- panel.add(box);
- }
- }
- catch (Exception e)
- {
- System.out.println("echec pilote : "+e);
- }
- bouton = new Button("ajouter" );
- panel.add(bouton);
- bouton.addActionListener(this);
- //box.addActionListener(this);
- JFrame frame = new JFrame();
- frame.setContentPane(panel);
- frame.setSize(300,300);
- frame.setVisible(true);
- }
- public void actionPerformed(ActionEvent e)
- {
- if ( (Button) e.getSource() == bouton )
- {
- if (box.isSelected())
- {
- //String chel = e.getActionCommand();
- //String lab11 = box.getText();
- String nomm = nom.getText();
- String prixx = prix.getText();
- JOptionPane.showMessageDialog(null,"nom : "+nom.getText()+" "+ "prix : "+prix.getText()+" "+"type :" );
- String pilote = "com.mysql.jdbc.Driver";
- try{
- //Chargement de mon pilote
- Class.forName(pilote);
- //Connexion à ma base mysql avec mon login et mot de passe ( à vous de changer cela)
- Connection connexion = DriverManager.getConnection("jdbc:mysql://localhost/creperie","root","root" );
- //Création de mon statement qui va me permettre d'executer mes requetes
- Statement instruction = connexion.createStatement();
- //Ma table s'appelle coffees et tout ce qui reste dépend d'elle
- //Vous devez changer certaines infos comme le nom de la table et celui des colonnes
- int inserer = instruction.executeUpdate("INSERT INTO carte VALUES ('','"+nom.getText()+"','','"+prix.getText()+"')" );
- }
- catch (Exception ex){
- System.out.println("echec pilote : "+ex);
- }
- }
- }
- }}
|
j'aimerai dejà qu'à cette ligne, apre type, cela m'affiche le label du bouton radio selectionné
<code>
JOptionPane.showMessageDialog(null,"nom : "+nom.getText()+" "+ "prix : "+prix.getText()+" "+"type :" );
</code>
de plus, j'ai utilisé group = new ButtonGroup(); afin q'un seul bouton radio ne soit selectionné, mais au lieu de ça, quand je clique sur l'un, puis sur un autre, j'ai les 2 de selectionné, et impossible de els deselectionner..
quelqu'un pourrait il m'aider à resoudre ces différents problèmes? merci d'avance..
|