rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

[JAVA] JRadioButton

Posté par oceane751, le lundi 16 avril 2007 à 00:55:31
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


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/cre­perie","root","root");
			//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/cre­perie","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é
JOptionPane.showMessageDialog(null,"nom : "+nom.getText()+" "+ "prix : "+prix.getText()+" "+"type :" );


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..
Configuration: Windows XP
Internet Explorer 6.0
Répondre à oceane751  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
hotrod, le lundi 16 avril 2007 à 12:14:16
Alors déjà pour le ButtonGroup tu crées un nouveau ButtonGroup a chaque boutton. Il faut que tu mettes le group = new ButtonGroup(); avant le while. Tu devrez déjà avoir un bouton en selection et pourvoir le récuérer par isSelected.
Répondre à hotrod

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
oceane751, le lundi 16 avril 2007 à 20:19:54
ok je vais essayer..;

mais comment, apres avoir mi isSelected(), recuperer la valeur du radio coché?

merci encore
Répondre à oceane751

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
hotrod, le mardi 17 avril 2007 à 13:52:57
Perso dans ce cas je stocke la valeur du bouton radio chaque fois qu'on clique dessus
ex :
String result;
[...]
for (int i = 0; i < 5; i++) {
b = new JRadioButton("Type : " + i);
b.addActionListener(this);
bg.add(b);
p.add(b);
}
jb = new JButton("Ok");
jb.addActionListener(this);
[...]
public void actionPerformed(ActionEvent e) {
if (e.getSource() instanceof JRadioButton) {
result = ((JRadioButton) e.getSource()).getText();
} else {
if (e.getSource() == jb) {
System.out.println(result);
}
}
}
Répondre à hotrod

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
oceane751, le mardi 17 avril 2007 à 17:52:19
ok merci

j'ai voulu ajouté un champs TextField pour chaque bouton
j'ai fait ça : TextField text = new TextField(i) ou TextField text = new TextField()

puis j'ai fait :
JOptionPane.showMessageDialog(null, "Je suis le bouton : " + bt.getText()+" " +((TextField)e.getSource()).getText());

mais ya beauoup d'erreur...
Répondre à oceane751

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 marian, le jeudi 1 mai 2008 à 12:55:04
s il vous plait j aimerais bien s avoire un cours complet sur JRadioButton avec exemple et methode
Répondre à marian
Logiciels pertinents trouvés dans les téléchargements
Télécharger Java Runtime Environment 6 Update 7Java Runtime Environment - Java Runtime Environment (JRE) installe la machine virtuelle Java, permettant de jouer en ligne, de discuter avec des...Catégorie: Java
Licence: Open Source
Télécharger Azureus 3.0.5.2bAzureus - Azureus est un client BitTorrent multiplateformes développé en Java, c'est-à-dire un gestionnaire de téléchargement de...Catégorie: Téléchargement
Licence: Open Source
Télécharger FreeMind 0.8.1FreeMind - FreeMind est un logiciel de Mind mapping entièrement libre, permettant de créer des cartes heuristiques permettant de...Catégorie: Organisation
Licence: Open Source
Télécharger Web Developer Toolbar 1.1.6Web Developer Toolbar - WebDeveloper est une extension firefox représentant une formidable boîte à outils pour examiner et manipuler les pages...Catégorie: Extensions Firefox
Licence: Freeware/gratuit
Plus de logiciels gratuits sur « [JAVA] JRadioButton »