站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题新手上路:关于列表框的(中文)值如何取?

新手上路:关于列表框的(中文)值如何取?

摘要: 新手上路:关于列表框的(中文)值如何取?


import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
public class Test extends Applet implements ItemListener {
TextArea z=new TextArea(null,6,40);
Checkbox a=new Checkbox(-#34;水果-#34;);
Checkbox b=new Checkbox(-#34;蔬菜-#34;);
CheckboxGroup c=new CheckboxGroup();
Checkbox d=new Checkbox(-#34;男-#34;,c,true);
Checkbox k=new Checkbox(-#34;女-#34;,c,false);
List f=new List(2,false);
Choice g=new Choice();
public void init() {
setLayout(new FlowLayout());
f.add(-#34;浙江-#34;);
f.add(-#34;北京-#34;);
g.add(-#34;大话西游-#34;);
g.add(-#34;梦幻西游-#34;);
add(a);
add(b);
add(d);
add(k);
add(f);
add(g);
add(z);
a.addItemListener(this);
b.addItemListener(this);
d.addItemListener(this);
k.addItemListener(this);
f.addItemListener(this);
g.addItemListener(this);
}
public void itemStateChanged(ItemEvent e) {
if(e.getSource()==a)
z.append(-#34;/n 你选择了复选框 水果-#34;);
else if(e.getSource()==b)
z.append(-#34;/n 你选择了复选框 蔬菜-#34;);
else if(e.getSource()==d)
z.append(-#34;/n 你选择了单选框 男-#34;);
else if(e.getSource()==k)
z.append(-#34;/n 你选择了单选框 女-#34;);
else if(e.getSource()==f)
z.append(-#34;/n 你选择了列表框-#34;+e.getItem()); // 这行只能取到索引值0,1
else
z.append(-#34;/n 你选择了列表框-#34;+e.getItem());
}
}

f容器的浙江和北京这两个中文字怎么取?我用e.getItem()取到的值是0或1的索引值




getSelectbox()方法可以获得用户选择了哪个按钮


路过,友情up...


我要的是列表框里列表的值,难道没办法取吗?

大虾顺路帮忙啊!!!!!!!


路过,友情up...


为什么没人帮我??


帮顶,没用过java图形界面,期待专家


getLabel()


ItemListener的所有方法:
Object getItem()
返回受事件影响的项。
ItemSelectable getItemSelectable()
返回事件的产生程序。
int getStateChange()
返回状态更改的类型(已选定或已取消选定)。
String paramString()
返回标识此项事件的参数字符串。


没有getLabel()方法


问了那么久没问到答案

不会无解吧???????????


study


参数e只是一个事件,它不能带回来你要得东西
要取得list f里面的东西必须这样做:
else if(e.getSource() instanceof List)
z.append(-#34;/n 你选择了列表框-#34;+ ((List)e.getSource()).getItem(0));
这里的0只是我给的一个例子,在你程序中把你的索引值填进去就行


谢谢一直关注我的问题的各位,特别感谢bayougeng(红雨)

目前已调试成功,完整代码为:

import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
public class test1 extends Applet implements ItemListener {
TextArea z=new TextArea(null,6,40);
Checkbox a=new Checkbox(-#34;水果-#34;);
Checkbox b=new Checkbox(-#34;蔬菜-#34;);
CheckboxGroup c=new CheckboxGroup();
Checkbox d=new Checkbox(-#34;男-#34;,c,true);
Checkbox k=new Checkbox(-#34;女-#34;,c,false);
List f=new List(2,false);
Choice g=new Choice();
public void init() {
setLayout(new FlowLayout());
f.add(-#34;浙江-#34;);
f.add(-#34;北京-#34;);
g.add(-#34;大话西游-#34;);
g.add(-#34;梦幻西游-#34;);
add(a);
add(b);
add(d);
add(k);
add(f);
add(g);
add(z);
a.addItemListener(this);
b.addItemListener(this);
d.addItemListener(this);
k.addItemListener(this);
f.addItemListener(this);
g.addItemListener(this);
}
public void itemStateChanged(ItemEvent e)
{
if(e.getSource()==a)
z.append(-#34;/n你选择了复选框 水果-#34;);
else if(e.getSource()==b)
z.append(-#34;/n你选择了复选框 蔬菜-#34;);
else if(e.getSource()==d)
z.append(-#34;/n你选择了单选框 男-#34;);
else if(e.getSource()==k)
z.append(-#34;/n你选择了单选框 女-#34;);
else if(e.getSource() instanceof List)
if (e.getItem().equals(0))
z.append(-#34;/n你选择了列表框-#34;+((List)e.getSource()).getItem(0));
else
z.append(-#34;/n你选择了列表框-#34;+((List)e.getSource()).getItem(1));
else
z.append(-#34;/n你的输入有误!-#34;);
}
}


过会结贴给分!


↑返回目录
前一篇: 按鼠标左键,光标移动的event.keyCode=???
后一篇: 枚举类型不能写在case后面吗?高手来看下我的简单代码!