当前位置:首页 » 编程语言 » javacombobox

javacombobox

发布时间: 2022-09-15 01:26:29

java中ComboBox使用方法

很简单,直接new一个字符串数组,然后再创建comboBox对象的时候作为参数。有一个setSIze函数,这个是用来设置显示多少个可选项的。大小为1的时候是下来列表。非1的时候出现滚动条。 取出该空间内容就是在值改变的事件下,调用函数确切的函数名我忘记了,不过获得的是一个字符串或者字符串数组。结果就是选中的选项。

❷ java怎样获取JComboBox的数据

方法如下:
JComboBox comboBox = new JComboBox();
comboBox .setModel(new javax.swing.DefaultComboBoxModel(new String[] { "A","B","C" }));
//事件注册
comboBox .addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
comboBox ItemStateChanged(evt);
}
});
private void comboBox ItemStateChanged(java.awt.event.ItemEvent evt){
if (ItemEvent.SELECTED == evt.getStateChange()) { //这个判断是选择只会得到一个结果,如果没有判断,会得到两个相同的值,从而获取不到所要选中的值。。
String Str_A = comboBox.getSelectItem().toString();
}
}

❸ java关于JComboBox如何取值的问题

JComboBox有一个getSelectedItem()的方法得到选择的值和一个getSelectedIndex()得到选择值的索引。
getSelectedObjects()得到选择的多个值。getItemCount()是得到选择的数量。getItemAt(int
i)是得到指定索引的值。

下面是一个具体的例子,首先输出所有下拉框的值,然后是在下拉框选择改变是输出所选择的的值。


{
privateJComboBox<Object>comboBox;
publicComboxGet()
{
JFrameframe=newJFrame("window");

finalStringdef[]=
{"A","B","C","D","E"};
comboBox=newJComboBox<Object>(def);
comboBox.addItemListener(this);
comboBox.setEditable(true);
frame.add(comboBox,BorderLayout.NORTH);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
frame.setVisible(true);
for(inti=0;i<comboBox.getItemCount();i++)
System.out.println(comboBox.getItemAt(i));

}
publicstaticvoidmain(finalStringargs[])
{
newComboxGet();
}
@Override
publicvoiditemStateChanged(ItemEvente)
{
System.out.println(comboBox.getSelectedItem());
}
}

❹ java 中jcombobox怎么用

1. 构造方法:
* JComboBox() 建立一个JComboBox组件.
* JComboBox(ComboBoxModel model) 根据model建立一个JComboBox组件.
* JComboBox(Objext[] items) 利用数组对象建立一个JComboBox组件.
* JComboBox(Vector items) 利用Vector对象建立一个JComboBox组件.
2. 增加item和侦听器等操作:
* additem 增加item
*insertitemAt 插入item
*removeitem 删除item

*removeitemAt 将某个item删除
*setselectitem 设置选择的item

*setselectitemIndex 设置选择的item序号
*Seteditable 可编辑
下面是一个例子:
String[] schoolage = { "本科", "硕士", "博士" };
schoolageComboBox = new JComboBox(schoolage);
schoolageComboBox.addItem("其他");
schoolageComboBox.insertItemAt("请选择", 0);
schoolageComboBox.setSelectedIndex(0);
schoolageComboBox.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == ItemEvent.SELECTED) { // 查看是否为新选中的选项触发
if (e.getItem().equals("其他") || e.getItem().equals("")) { // 查看触发的选项
schoolageComboBox.setEditable(true); // 设置选择框为可编辑
schoolageComboBox.setSelectedItem(""); // 将选项值修改为0字节
} else {
schoolageComboBox.setEditable(false); // 设置选择框为不可编辑

❺ java中的JComboBox问题

<>表示泛型,就是限制你的类型~JComboBox<String>这个就是限制只能用String类型的,用其他的时候,语法检查的时候就会自动检查出来你使用的类型不对,这个就是对以后代码维护的时候防止你类型输入错误,因为你输入其他类型的时候,语法检查就通不过~~

❻ java的swing的下拉框JComboBox如何设置默认项

JComboBox下拉框可以设置默认项,方法为;

  1. 先定义一个默认值字符串数组

  2. 用字符串数组来构造JComboBox,将其中需要设置成默认项的添加:selected : true

下面是一个具体的例子:

publicclassComboxTest
{
publicstaticvoidmain(finalStringargs[])
{
JFrameframe=newJFrame("window");

finalStringdef[]=
{"A","B","C","D","E"};
JComboBox<Object>comboBox=newJComboBox<Object>(def);

comboBox.setMaximumRowCount(5);
comboBox.setEditable(true);
frame.add(comboBox,BorderLayout.NORTH);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
frame.setVisible(true);
}
}

❼ java comboBox设置监听器的疑惑

itemStateChanged 这个方法的意思是选项状态改变,你说的这个方法被执行两遍,原因是这样的:当你改变下拉选项时,之前的选项状态从选中变为非选中,你所选择的新值从非选中变为选中。这两个变化都是选项状态改变,所以你要增加判断。

❽ java中,JComboBox下拉框选项事件。不同选项触发不同事件

JComboBox jComboBox = new JComboBox(new Object[]{"选项1","选项2","选项3"});
panel.add(jComboBox);
jComboBox.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent itemEvent) {

if(itemEvent.getStateChange()==1){
if(itemEvent.getItem()=="选项1"){
System.out.println("选项1输出");
}else if(itemEvent.getItem()=="选项2"){
System.out.println("选项2输出");
}{

}
}
}
});

❾ java如何获取combobox监听事件里的值

combobox有有select 事件;
listeners : {
select : function(combo, record, index) {
record.get('XXX');//获取所选记录对应的XXX的值
}
}

function中的参数 combo是现在操作的combobox组件,record是所选的值,index是所选值在combobox的store中的下标。

❿ Java combobox触发如何改变另一个combobox的item

importjavax.swing.*;
importjava.awt.*;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.awt.event.ItemEvent;
importjava.awt.event.ItemListener;
importjava.io.BufferedWriter;
importjava.io.File;
importjava.io.FileOutputStream;
importjava.io.PrintWriter;

{
JTextFieldresultText;
JComboBoxyearComboBox,monthComboBox,dayComboBox;
,day31ComboBoxModel,day28ComboBoxModel,day29ComboBoxModel;

publicDateSelect(){
this.setTitle("");
this.setSize(230,100);

=newDefaultComboBoxModel();
=newDefaultComboBoxModel();
day30ComboBoxModel=newDefaultComboBoxModel();
day31ComboBoxModel=newDefaultComboBoxModel();
day28ComboBoxModel=newDefaultComboBoxModel();
day29ComboBoxModel=newDefaultComboBoxModel();
for(inti=1900;i<=2999;i++){
yearComboBoxModel.addElement(i);
}
for(inti=1;i<=12;i++){
monthComboBoxModel.addElement(i);
}
for(inti=1;i<=31;i++){
day31ComboBoxModel.addElement(i);
if(i<=30)day30ComboBoxModel.addElement(i);
if(i<=29)day29ComboBoxModel.addElement(i);
if(i<=28)day28ComboBoxModel.addElement(i);
}

yearComboBox=newJComboBox(yearComboBoxModel);
yearComboBox.setSelectedIndex(116);
monthComboBox=newJComboBox(monthComboBoxModel);
monthComboBox.setSelectedIndex(0);
dayComboBox=newJComboBox(day31ComboBoxModel);
dayComboBox.setSelectedIndex(0);

JPanelmainPanel=newJPanel();

resultText=newJTextField(12);
resultText.setEnabled(false);

=newItemListener(){
@Override
publicvoiditemStateChanged(ItemEvente){
if(e.getStateChange()==ItemEvent.SELECTED){
Stringresult=yearComboBox.getSelectedItem()+"年"+monthComboBox.getSelectedItem()+"月"+dayComboBox.getSelectedItem()+"日";
resultText.setText(result);
}
}
};

=newItemListener(){
@Override
publicvoiditemStateChanged(ItemEvente){
//如果选中了一个
if(e.getStateChange()==ItemEvent.SELECTED){
//这里写你的任务,比如取到现在的值
intdaySelectIndex=dayComboBox.getSelectedIndex();
switch(monthComboBox.getSelectedIndex()+1){
case4:
case6:
case9:
case11:{
dayComboBox.setModel(day30ComboBoxModel);
dayComboBox.setSelectedIndex(0);
break;
}
case2:{
intyear=(int)yearComboBox.getSelectedItem();
if(year%4==0&&year%100!=0){
dayComboBox.setModel(day29ComboBoxModel);
}else{
dayComboBox.setModel(day28ComboBoxModel);
}
dayComboBox.setSelectedIndex(0);
break;
}
default:{
dayComboBox.setModel(day31ComboBoxModel);
dayComboBox.setSelectedIndex(0);
break;
}
}
dayComboBox.setSelectedIndex(daySelectIndex);
}
}
};

//监听选中
monthComboBox.addItemListener(selectItemListener);
yearComboBox.addItemListener(selectItemListener);
//监听修改
monthComboBox.addItemListener(changeItemListener);
yearComboBox.addItemListener(changeItemListener);
dayComboBox.addItemListener(changeItemListener);

mainPanel.add(yearComboBox);
mainPanel.add(monthComboBox);
mainPanel.add(dayComboBox);
mainPanel.add(resultText);

this.add(mainPanel);
}

publicstaticvoidmain(String[]args){
DateSelectdateSelect=newDateSelect();
dateSelect.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
dateSelect.setVisible(true);
}
}

热点内容
微信里的密码和账号在哪里 发布:2025-01-11 22:46:04 浏览:750
java字符串个数统计 发布:2025-01-11 22:45:05 浏览:541
完美国际2捏脸数据库 发布:2025-01-11 22:45:04 浏览:279
php淘宝互刷平台源码 发布:2025-01-11 22:43:49 浏览:215
剑侠情缘缓存怎么清理 发布:2025-01-11 22:33:56 浏览:316
win7旗舰版怎么设置密码 发布:2025-01-11 22:21:09 浏览:144
被害人访问 发布:2025-01-11 22:06:24 浏览:366
朋友圈上传长视频方法 发布:2025-01-11 22:01:41 浏览:357
我的世界ice服务器被炸罚款 发布:2025-01-11 21:54:36 浏览:725
linuxphpini配置 发布:2025-01-11 21:54:35 浏览:481