这个问题已经困扰我好久了,希望有高手可以帮我解答!谢谢
我要做一个对话框,是输入学生信息的,其中用单选按钮来选择性别,用JTextField输入学号等,当我输入后想要清空已输入的信息,JTextField的清空可以在ActionListener中用setText("");来实现,但是单选按钮我用setSelected(false);就是不能清空选中状态,希望大家能帮帮我,谢谢了!
我要做一个对话框,是输入学生信息的,其中用单选按钮来选择性别,用JTextField输入学号等,当我输入后想要清空已输入的信息,JTextField的清空可以在ActionListener中用setText("");来实现,但是单选按钮我用setSelected(false);就是不能清空选中状态,希望大家能帮帮我,谢谢了!
package com.monitor1394.tabletest;/*
* StudentDialog.java
*
* 学生信息输入面板
*
* @author monitor
* Created on 2010-12-23, 17:12:21
*/
public class StudentDialog extends javax.swing.JDialog { public StudentDialog(java.awt.Frame parent) {
super(parent, true);
initComponents();
} @SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() { jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
idField = new javax.swing.JTextField();
nameField = new javax.swing.JTextField();
boyButton = new javax.swing.JRadioButton();
sureButton = new javax.swing.JButton();
clearButton = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); jLabel1.setText("学号:"); jLabel2.setText("姓名:"); jLabel3.setText("性别:"); boyButton.setText("男"); sureButton.setText("确认");
sureButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
sureButtonActionPerformed(evt);
}
}); clearButton.setText("清空");
clearButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
clearButtonActionPerformed(evt);
}
}); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(35, 35, 35)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(29, 29, 29)
.addComponent(sureButton)
.addGap(18, 18, 18)
.addComponent(clearButton))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel3)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(boyButton))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel2)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(nameField))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(idField, javax.swing.GroupLayout.PREFERRED_SIZE, 157, javax.swing.GroupLayout.PREFERRED_SIZE))))
.addContainerGap(43, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(21, 21, 21)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1)
.addComponent(idField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(nameField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(boyButton))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 17, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(clearButton)
.addComponent(sureButton))
.addContainerGap())
); pack();
}// </editor-fold> private void clearButtonActionPerformed(java.awt.event.ActionEvent evt) {
idField.setText(null);
nameField.setText(null);
boyButton.setSelected(false);
} private void sureButtonActionPerformed(java.awt.event.ActionEvent evt) {
//do something
} // Variables declaration - do not modify
private javax.swing.JRadioButton boyButton;
private javax.swing.JButton clearButton;
private javax.swing.JTextField idField;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JTextField nameField;
private javax.swing.JButton sureButton;
// End of variables declaration
}
//录入界面
import javax.swing.*;
import javax.swing.plaf.basic.BasicBorders.RadioButtonBorder;import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;//public class StudentSituation extends JFrame{
public class StudentSituation extends JFrame{
JTextField jtfNum = new JTextField();
JButton jbAdd = new JButton("录入");
JTextField jtfName = new JTextField("");
JButton jbCancel = new JButton("取消");
JPanel jpSex = new JPanel();
JRadioButton jrbMan = new JRadioButton("男");
JRadioButton jrbWoman = new JRadioButton("女");
JTextField jtfMajor = new JTextField("");
JTextField jtfAddr = new JTextField("");
JTextField jtfBirth = new JTextField("");
public StudentSituation(){
GridLayout mainInquestFrame = new GridLayout(8,3,5,5);
setLayout(mainInquestFrame);
ActionListener okListener = new okListener();
jbAdd.addActionListener(okListener);
ActionListener cancellistener = new cancelListener();
jbCancel.addActionListener(cancellistener);
//jbCancel.addActionListener(cancelListener);
add(new JLabel());
add(new JLabel());
add(new JLabel());
add(new JLabel(" 输入要查询的学号:"));
//JTextField jtfNum = new JTextField();
add(jtfNum);
//JButton jbAdd = new JButton("录入");
add(jbAdd);
add(new JLabel(" 姓名:"));
//JTextField jtfName = new JTextField("");
add(jtfName);
//JButton jbCancel = new JButton("取消");
add(jbCancel);
add(new JLabel(" 性别:"));
ButtonGroup bgSex = new ButtonGroup();
//JPanel jpSex = new JPanel();
//JRadioButton jrbMan = new JRadioButton("男");
//JRadioButton jrbWoman = new JRadioButton("女");
bgSex.add(jrbMan);
bgSex.add(jrbWoman);
jpSex.add(jrbMan,true);
jpSex.add(jrbWoman);
//jpSex.setEnabled(false);
add(jpSex);
//jrbMan.setSelected(true);
jrbMan.setSelected(false);
add(new JLabel());
add(new JLabel(" 所学专业:"));
//JTextField jtfMajor = new JTextField("");
add(jtfMajor);
add(new JLabel());
add(new JLabel(" 家庭住址"));
//JTextField jtfAddr = new JTextField("");
add(jtfAddr);
add(new JLabel());
add(new JLabel(" 出生日期"));
add(jtfBirth);
add(new JLabel());
}
private class okListener implements ActionListener{
public void actionPerformed(ActionEvent e){
StudentManager.stuInfo[StudentManager.s] = new StudentInfo();
StudentManager.stuInfo[StudentManager.s].setNum(jtfNum.getText());
StudentManager.stuInfo[StudentManager.s].setName(jtfName.getText());
if(jrbMan.isSelected())
StudentManager.stuInfo[StudentManager.s].setSex(true);
else
StudentManager.stuInfo[StudentManager.s].setSex(false);
StudentManager.stuInfo[StudentManager.s].setMajor(jtfMajor.getText());
StudentManager.stuInfo[StudentManager.s].setAddr(jtfAddr.getText());
StudentManager.stuInfo[StudentManager.s].setBirth(jtfBirth.getText());
System.out.println(jtfNum.getText() + jtfName.getText() +
jtfMajor.getText());
StudentManager.s++;
}
}
private class cancelListener implements ActionListener{
public void actionPerformed(ActionEvent e){
jtfNum.setText(null);
jtfName.setText(null);
jrbMan.setSelected(false);
jrbWoman.setSelected(false);//!!!!!!!就是这里了!
jtfMajor.setText(null);
jtfAddr.setText(null);
jtfBirth.setText(null);
}
}
}
要加一句
bgSex.clearSelection();
不过为了这样要把你的
bgSex的定义放到类的定义部分import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;public class StudentSituation extends JFrame { JTextField jtfNum = new JTextField();
JButton jbAdd = new JButton("录入"); JTextField jtfName = new JTextField("");
JButton jbCancel = new JButton("取消");
JPanel jpSex = new JPanel();
ButtonGroup bgSex = new ButtonGroup();
JRadioButton jrbMan = new JRadioButton("男");
JRadioButton jrbWoman = new JRadioButton("女");
JTextField jtfMajor = new JTextField("");
JTextField jtfAddr = new JTextField("");
JTextField jtfBirth = new JTextField("");
public static void main(String[] args) {
new StudentSituation().setVisible(true);
} public StudentSituation() {
GridLayout mainInquestFrame = new GridLayout(8, 3, 5, 5);
setLayout(mainInquestFrame);
ActionListener okListener = new okListener();
jbAdd.addActionListener(okListener);
ActionListener cancellistener = new cancelListener();
jbCancel.addActionListener(cancellistener);
add(new JLabel());
add(new JLabel());
add(new JLabel());
add(new JLabel(" 输入要查询的学号:"));
// JTextField jtfNum = new JTextField();
add(jtfNum);
// JButton jbAdd = new JButton("录入");
add(jbAdd);
add(new JLabel(" 姓名:"));
// JTextField jtfName = new JTextField(""); add(jtfName);
// JButton jbCancel = new JButton("取消");
add(jbCancel); add(new JLabel(" 性别:")); bgSex.add(jrbMan);
bgSex.add(jrbWoman);
jpSex.add(jrbMan, true);
jpSex.add(jrbWoman);
// jpSex.setEnabled(false);
add(jpSex); // jrbMan.setSelected(true);
jrbMan.setSelected(false);
add(new JLabel()); add(new JLabel(" 所学专业:"));
// JTextField jtfMajor = new JTextField("");
add(jtfMajor);
add(new JLabel()); add(new JLabel(" 家庭住址"));
// JTextField jtfAddr = new JTextField("");
add(jtfAddr);
add(new JLabel()); add(new JLabel(" 出生日期"));
add(jtfBirth);
add(new JLabel()); } private class okListener implements ActionListener {
public void actionPerformed(ActionEvent e) { StudentManager.stuInfo[StudentManager.s] = new StudentInfo();
StudentManager.stuInfo[StudentManager.s].setNum(jtfNum.getText());
StudentManager.stuInfo[StudentManager.s].setName(jtfName.getText());
if (jrbMan.isSelected())
StudentManager.stuInfo[StudentManager.s].setSex(true);
else
StudentManager.stuInfo[StudentManager.s].setSex(false); StudentManager.stuInfo[StudentManager.s].setMajor(jtfMajor
.getText());
StudentManager.stuInfo[StudentManager.s].setAddr(jtfAddr.getText());
StudentManager.stuInfo[StudentManager.s].setBirth(jtfBirth
.getText());
System.out.println(jtfNum.getText() + jtfName.getText()
+ jtfMajor.getText()); StudentManager.s++;
}
} private class cancelListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
jtfNum.setText(null);
jtfName.setText(null);
jrbMan.setSelected(false);
jrbWoman.setSelected(false);// !!!!!!!就是这里了!
jtfMajor.setText(null);
jtfAddr.setText(null);
jtfBirth.setText(null);
bgSex.clearSelection();
}
}}