ورود

View Full Version : سوال: چگونه می توان فهمید کدام یک از گزینه های ComboBox انتخاب شده است؟



mostafarastin239
دوشنبه 10 اسفند 1388, 19:05 عصر
سلام
من یک ComboBox شامل گزینه های همه، نام خانوادگی و ... دارم. چگونه متوجه شوم کدام یک از گزینه های ComboBox انتخاب شده است؟
با تشکر

soheril.server
دوشنبه 10 اسفند 1388, 19:38 عصر
با سلام
شما میتوانید به این صورت عمل کنید:

String selection=jCombobox1.getselecteditem().tostring()

jlover
دوشنبه 10 اسفند 1388, 20:49 عصر
روش استاندارد و کاراتر :
محتوای هر comboBox یک آرایه ست.اگه قبول دارید ادامه میدیم :
حالا اگر به اندیس هر خونه ی آرایه یک ثابت عددی صحیح نگاشت کنید ،اونوقت میتونید با استفاده از متد ()getSelkectedIndex و فرستادن این نتیجه به متدی که از یک بستار switch استفاده میکنه ، عملیات مورد نظرتون رو انجام بدید
اجازه بدید با قطعه کدهای زیر مسئله رو روشنتر کنم :


*/
*
/*
JComboBox patterns , laevels ;
/***********************/

public void itemStateChanged(java.awt.event.ItemEvent e) {
canvas.setPattern(patterns.getSelectedIndex(), levels.getSelectedIndex());
canvas.repaint(); // Repaint the canvas
} // itemStateChanged()

/********************************************/
private class Canvas extends JPanel{
private static final int GASKET=0, BOXES=1, DIAMONDS=2, SPIARL=3, EYE=4 ;
/***/
private int pattern = 0 ; // initial pattern
private int level = 4; // initial level
/*********************/
public void setPattern(int pat, int lev) {
pattern = pat;
level = lev;
}
/**********************/
public void paintComponent(Graphics g){
super.paintComponent(g);
switch (pattern) {
case GASKET:
drawGasket(g, level, gasketP1, gasketP2, gasketP3 );
break;
case BOXES:
drawBoxes(g, level, new Point(HBOX, VBOX), BOXSIDE, BOXDELTA );
break;
case DIAMONDS:
drawDimondBox(g);
break;
case SPIARL:
drawSpiralBox(g);
break;
case EYE:
drawEye(g);
break;
} // switch
} // paintComponent()

mostafarastin239
سه شنبه 11 اسفند 1388, 14:23 عصر
سلام
حل شد.
دستور زیر عدد مربوط به گزینه ی انتخاب شده ComboBox را بر می گرداند.



int selection = jComboBox1.getSelectedIndex();