Java开发GUI之单复选框 原

Java开发GUI之单复选框

    单复选框在处理一些用户选项时十分方便。在Java的GUI体系中,复选框使用Checkbox类来创建,单选框实际上是将多个复选框结合成为组,同一组的复选框同时只能有一个被选中。

		Frame frame = new Frame("BUTTON");
		Panel pannel = new Panel();
		frame.add(pannel);
		MyItemListener listener = new MyItemListener();
		//无参的构造方法
		Checkbox checkbox1 = new Checkbox();
		//设置显示文本
		checkbox1.setLabel("是否已退款");
		//设置选中状态
		checkbox1.setState(true);
		//添加状态变化监听
		checkbox1.addItemListener(listener);
		//使用设置文本和状态的构造方法
		Checkbox checkbox2 = new Checkbox("是否开通额外服务", false);
		checkbox2.addItemListener(listener);
		pannel.add(checkbox1);
		pannel.add(checkbox2);
		//创建组
		CheckboxGroup group = new CheckboxGroup();
		Checkbox checkbox3 = new Checkbox("男", false);
		checkbox3.addItemListener(listener);
		checkbox3.setCheckboxGroup(group);
		Checkbox checkbox4 = new Checkbox("女", false, group);
		checkbox4.addItemListener(listener);
		pannel.add(checkbox3);
		pannel.add(checkbox4);
		frame.pack();
		frame.show();

MyItemListener实现了ItemListener接口,如下:

class MyItemListener implements ItemListener{

	@Override
	public void itemStateChanged(ItemEvent e) {
		// TODO Auto-generated method stub
		System.out.println(((Checkbox)e.getSource()).getState());
	}
	
}

效果如下图所示:

Checkbox类常用方法汇总:

//获取标题文本
public String getLabel();
//设置标题
public void setLabel(String label);
//获取当前复选框的选中状态
public boolean getState();
//设置当前复选框的选中状态
public void setState(boolean state);
//获取复选框所在的组
public CheckboxGroup getCheckboxGroup();
//设置复选框组
public void setCheckboxGroup(CheckboxGroup g);
//添加状态监听对象
public synchronized void addItemListener(ItemListener l);
//移除状态监听对象
public synchronized void removeItemListener(ItemListener l);
//获取状态监听对象
public synchronized ItemListener[] getItemListeners();
public <T extends EventListener> T[] getListeners(Class<T> listenerType);

CheckboxGroup常用方法汇总:

//获取组中当前选中的checkbox
public Checkbox getSelectedCheckbox();
//设置当前选中的checkbox
public void setSelectedCheckbox(Checkbox box);

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏老马寒门IT

02-老马jQuery教程-jQuery事件处理

在DOM中DOM0级绑定事件的方式是直接给事件属性赋值,但是这样有个缺点就是每次指定的事件处理程序会把之前的覆盖掉。

2320
来自专栏落花落雨不落叶

关于Html与css的一些解释

32012
来自专栏木子昭的博客

<布局>子级相对级居中对齐的几种方式

? 一. 父元素相对定位, 子元素绝对定位,然后右下偏移top: 50%; left: 50%; 再反向偏移transform: transtlate(-50...

2944
来自专栏cnblogs

Bootstrap源码分析之transition、affix

一、Transition(过滤) 作为一个基础支持的组件,被其他组件多次引用。实现根据浏览器支持transition的能力,然后绑定动画的结束事件; 首先:创建...

2137
来自专栏我分享我快乐

WEB布局代码初学者常见问题整理

1、 单词写错 ? ? 2、 用中文符号 ? ? 3、 标签未结束 ? ? 4、 引号未结束 ? ? 5、 尖括号未结束 ? ? 6、 标签属性之间...

3226
来自专栏Java后端技术

细谈CSS布局方式

  [2].浮动布局方式:通过设置html的float属性显示,值:none不浮动、left对象向左浮动,而后面的内容流向对象的右侧、right对象向右浮动,而...

1182
来自专栏十月梦想

Vue同时使用transition(过渡)和animate.css(动画库)

    解决第一次出现没有动画新增apper属性点添加apper-active-class,同时使用过渡和动画,可以在class中新增过渡的calss,v-en...

9061
来自专栏wym

见缝插针游戏--实现转圈

1371
来自专栏web前端-

HTML基础知识

  属性的作用就是就为元素提供更多的信息,大多数元素都可以拥有属性    属性的语法:<标签 属性1=参数1>   注意空格的使用

4643
来自专栏从零开始学 Web 前端

从零开始学 Web 之 DOM(一)DOM的概念,对标签操作

我们把 html 文件看成一个文档,因为万物皆对象,所以这个文档也是一个对象。这个文档中所有的标签都可以看成一个对象,比如 div 标签,p 标签等。

1242

扫码关注云+社区

领取腾讯云代金券