Java Swing တွင် JComboBox အသုံးပြုခြင်း
Java Swing တွင် JComboBox သည် dropdown list တစ်ခုကို ဖန်တီးရန် အသုံးပြုသော component တစ်ခုဖြစ်ပါသည်။ ၎င်းသည် user အား ရွေးချယ်စရာများစွာထဲမှ တစ်ခုကို ရွေးချယ်နိုင်စေရန် သို့မဟုတ် ကိုယ်တိုင် input ထည့်သွင်းနိုင်စေရန် (editable ဖြစ်ပါက) ခွင့်ပြုပါသည်။ အောက်တွင် JComboBox ကို အသုံးပြု၍ ရိုးရှင်းသော example တစ်ခုကို ဖော်ပြထားပါသည်။
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class ComboBoxExample {
public static void main(String[] args) {
// JFrame ဖြင့် window တစ်ခုကို ဖန်တီးပါ။
JFrame frame = new JFrame("JComboBox Example");
frame.setLayout(new BoxLayout(frame.getContentPane(), BoxLayout.Y_AXIS)); // Vertical layout
// JComboBox အတွက် ရွေးချယ်စရာများ (items) ကို သတ်မှတ်ပါ။
String[] colors = {"Red", "Green", "Blue", "Yellow", "Black"};
// JComboBox ကို ဖန်တီးပါ။
JComboBox<String> colorComboBox = new JComboBox<>(colors);
// Default အနေဖြင့် "Green" ကို ရွေးချယ်ထားပါ။
colorComboBox.setSelectedItem("Green");
// JComboBox ကို editable ဖြစ်စေလိုပါက
// colorComboBox.setEditable(true);
// JButton ဖြင့် Button တစ်ခုကို ဖန်တီးပါ။
JButton submitButton = new JButton("Submit");
// Button ကို နှိပ်သောအခါ လုပ်ဆောင်မည့် event listener ကို ထည့်ပါ။
submitButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// JComboBox မှ ရွေးချယ်ထားသော item ကို ရယူပါ။
String selectedColor = (String) colorComboBox.getSelectedItem();
JOptionPane.showMessageDialog(frame, "You selected: " + selectedColor);
}
});
// JPanel ဖြင့် components များကို စီစဉ်ပါ။
JPanel panel = new JPanel();
panel.add(new JLabel("Select a color:"));
panel.add(colorComboBox);
panel.add(submitButton);
// Panel ကို frame ထဲသို့ ထည့်ပါ။
frame.add(panel);
// Window ကို close လုပ်သောအခါ program ကို အလိုအလျောက် ရပ်ပါ။
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Window ၏ size ကို သတ်မှတ်ပါ။
frame.setSize(300, 150);
// Window ကို မြင်နိုင်အောင် ပြပါ။
frame.setVisible(true);
}
}Code ရှင်းလင်းချက်
ဒီ code ထဲက အဓိက အစိတ်အပိုင်းတွေကို တစ်ခုချင်းစီ ထပ်ပြီး ရှင်းပြပါမယ်။
JFrame
JFrameသည် Java Swing တွင် window တစ်ခုကို ကိုယ်စားပြုသော class ဖြစ်ပါသည်။ ဤနေရာတွင်JFrameobject တစ်ခုကို"JComboBox Example"ဟူသော title ဖြင့် ဖန်တီးထားပါသည်။BoxLayoutကို အသုံးပြု၍ components များကို ဒေါင်လိုက် (vertical) စီစဉ်ထားပါသည်။javaJFrame frame = new JFrame("JComboBox Example"); frame.setLayout(new BoxLayout(frame.getContentPane(), BoxLayout.Y_AXIS));JComboBox Items
JComboBoxတွင် ပြသလိုသော ရွေးချယ်စရာများကို String array တစ်ခုအဖြစ် သတ်မှတ်နိုင်ပါသည်။javaString[] colors = {"Red", "Green", "Blue", "Yellow", "Black"};JComboBox Creation
JComboBoxobject ကို ဖန်တီးရာတွင် ရွေးချယ်စရာ array ကို constructor ထဲသို့ ထည့်သွင်းပေးရပါသည်။<String>သည် Generic type ဖြစ်ပြီး၊JComboBoxတွင် String type item များကို ထည့်သွင်းမည်ဟု ဆိုလိုပါသည်။javaJComboBox<String> colorComboBox = new JComboBox<>(colors);

Default Selection
setSelectedItem()method ကို အသုံးပြု၍JComboBoxတွင် default အနေဖြင့် ရွေးချယ်ထားလိုသော item ကို သတ်မှတ်နိုင်ပါသည်။javacolorComboBox.setSelectedItem("Green");

Editable ComboBox (Optional)
setEditable(true)method ကို ခေါ်ဆိုခြင်းဖြင့်JComboBoxကို editable ဖြစ်စေနိုင်ပါသည်။ ထိုအခါ user သည် dropdown list မှ ရွေးချယ်ရုံသာမက၊ ကိုယ်တိုင် text ကိုလည်း ရိုက်ထည့်နိုင်ပါသည်။java// colorComboBox.setEditable(true);JButton
JButtonသည် user interaction ကို ကိုင်တွယ်ရန် အသုံးပြုသော component ဖြစ်ပါသည်။ ဤနေရာတွင်"Submit"ဟူသော text ပါသော Button တစ်ခုကို ဖန်တီးထားပါသည်။javaJButton submitButton = new JButton("Submit");Event Handling with ActionListener
Button ကို နှိပ်သောအခါ
JComboBoxမှ ရွေးချယ်ထားသော item ကိုgetSelectedItem()method ဖြင့် ရယူပြီး message dialog ဖြင့် ပြသရန်ActionListenerinterface ကို အသုံးပြုထားပါသည်။getSelectedItem()သည် Object type ကို ပြန်ပေးသောကြောင့် String သို့ cast လုပ်ရန် လိုအပ်ပါသည်။javasubmitButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String selectedColor = (String) colorComboBox.getSelectedItem(); JOptionPane.showMessageDialog(frame, "You selected: " + selectedColor); } });

JPanel
JPanelသည် components များကို စီစဉ်ရန် အသုံးပြုသော container တစ်ခုဖြစ်ပါသည်။ ဤနေရာတွင်JLabel,JComboBox, နှင့်JButtonကိုJPanelထဲသို့ ထည့်သွင်းထားပါသည်။javaJPanel panel = new JPanel(); panel.add(new JLabel("Select a color:")); panel.add(colorComboBox); panel.add(submitButton);
JComboBox ၏ အခြား Features များ
ItemListener:
JComboBoxတွင် item ရွေးချယ်မှု ပြောင်းလဲတိုင်း event ကို ကိုင်တွယ်လိုပါကaddItemListener()method ကို အသုံးပြုနိုင်ပါသည်။Adding/Removing Items:
addItem()နှင့်removeItem()methods များကို အသုံးပြု၍JComboBoxတွင် item များကို dynamically ထည့်သွင်းခြင်း သို့မဟုတ် ဖယ်ရှားခြင်း ပြုလုပ်နိုင်ပါသည်။