javacombobox
❶ 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下拉框可以設置默認項,方法為;
先定義一個默認值字元串數組
用字元串數組來構造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);
}
}