JComboBox হলো JComponent ক্লাসের একটি সাবক্লাস যা একটি ড্রপ-ডাউন লিস্ট প্রদর্শন করে এবং ইউজারকে অপশন দেয় যাতে সে একবারে শুধু একটি আইটেম সিলেক্ট করতে পারে। JComboBox এডিটেবল বা রিড-অনলি হতে পারে। getSelectedItem() মেথড ব্যবহার করে কম্বো বক্স থেকে সিলেক্ট করা বা ইনপুট দেওয়া আইটেম পাওয়া যায়। MouseListener ইন্টারফেস বাস্তবায়ন করে এবং mouseReleased() মেথড ওভাররাইড করে JComboBox-এ ইউজার রাইট-ক্লিক করলে পপআপ মেনু ইনভোক করা যায়। MouseEvent ক্লাসের isPopupTrigger() মেথড ব্যবহার করে পপআপ মেনু দেখানো যায়।
উদাহরণ
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JComboBoxPopupTest extends JFrame {
private JComboBox jcb;
private JPopupMenu jpm;
private JMenuItem mItem1, mItem2;
public JComboBoxPopupTest() {
setTitle("JComboBoxPopup Test");
setLayout(new FlowLayout());
jcb = new JComboBox(new String[] {"Item 1", "Item 2", "Item 3"});
jpm = new JPopupMenu();
mItem1 = new JMenuItem("Popup Item 1");
mItem2 = new JMenuItem("Popup Item 2");
jpm.add(mItem1);
jpm.add(mItem2);
((JButton)jcb.getComponent(0)).addMouseListener(new MouseAdapter() {
public void mouseReleased(MouseEvent me) {
if (me.isPopupTrigger()) {
jpm.show(jcb, me.getX(), me.getY());
}
}
});
add(jcb);
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) throws Exception {
new JComboBoxPopupTest();
}
}
আউটপুট
