java单选按钮,当再次不选时(默认不选),如何恢复原来的事件
java单选按钮,当再次不选时(默认不选),如何恢复原来的事件如图,想默认执行第一个,选中的话执行第二个,可是再次不选时,却无法执行第一个怎么写才能让他不选时执行一个,选...
java单选按钮,当再次不选时(默认不选),如何恢复原来的事件如图,想默认执行第一个,选中的话执行第二个,可是再次不选时,却无法执行第一个
怎么写才能让他不选时执行一个,选中时执行一个,?如何循环 展开
怎么写才能让他不选时执行一个,选中时执行一个,?如何循环 展开
展开全部
如果是单选按钮组,那么你需要判断是哪一个按钮被选中了,然后执行相应的操作
当然了,如果只要实现隐藏和显示 ,那么一个复选按钮就够了,如图
import java.awt.event.*;
import javax.swing.*;
// 继承自JFrame实现ItemListener接口
public class DemoFrame extends JFrame implements ItemListener{
JPasswordField jpf;//密码框
JCheckBox jcb;//复选框
public DemoFrame() {
JPanel jp = new JPanel();
jcb = new JCheckBox("显示");
jcb.addItemListener(this);
jpf=new JPasswordField(8);
jpf.setEchoChar('&');
jp.add(jpf);
jp.add(jcb);
add(jp);
setTitle("测试");//标题
setSize(270, 80);//大小
setLocationRelativeTo(null);//居中
setDefaultCloseOperation(EXIT_ON_CLOSE);//关闭窗口就结束程序
}
public static void main(String[] args) {
new DemoFrame().setVisible(true);;
}
//实现接口的方法
@Override
public void itemStateChanged(ItemEvent e) {
if(jcb.isSelected()) {//如果复选框被选中,那么显示
jpf.setEchoChar((char)0);
}else {//否则 隐藏
jpf.setEchoChar('&');
}
}
}
更多追问追答
追问
能只用单选按钮实现吗?还是必须用复选框
追答
单选按钮可以实现的,效果如下,
import java.awt.event.*;
import javax.swing.*;
// 继承自JFrame实现ItemListener接口
public class DemoFrame extends JFrame implements ItemListener{
JPasswordField jpf;//密码框
JRadioButton jrb;//单选
public DemoFrame() {
JPanel jp = new JPanel();
jrb = new JRadioButton("显示");
jrb.addItemListener(this);
jpf=new JPasswordField(8);
jpf.setEchoChar('&');
jp.add(jpf);
jp.add(jrb);
add(jp);
setTitle("测试");//标题
setSize(270, 80);//大小
setLocationRelativeTo(null);//居中
setDefaultCloseOperation(EXIT_ON_CLOSE);//关闭窗口就结束程序
}
public static void main(String[] args) {
new DemoFrame().setVisible(true);;
}
//实现接口的方法
@Override
public void itemStateChanged(ItemEvent e) {
if(jrb.isSelected()) {//如果复选框被选中,那么显示
jpf.setEchoChar((char)0);
}else {//否则 隐藏
jpf.setEchoChar('&');
}
}
}
展开全部
和循环徜有关系。Java对GUI组件被用户操作时的响应,是事件触发机制的,用户点击了单选钮就用触发相应的事件处理。你用的是swing,单选钮对应的事件是itemStateChange(ItemEvent),使用的监听器是ItemListener。你只要在itemStateChange事件处理函数里,判断一下此单选钮是否选中,就可以了。
JCheckBox chkOption1=new JCheckBox("复选框");
chkOption1.addItemListener(new ItemListener(){
public void itemStateChanged(ItemEvent e){
if(e.getStateChange()==ItemEvent.SELECTED){
//选中时执行
}
else{
//取消选中时执行
}
}
});
//...
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询