JComboBox เป็นคลาสย่อยของ JComponent คลาสที่แสดง รายการดรอปดาวน์ และให้ตัวเลือกแก่ผู้ใช้ที่เราสามารถเลือก ทีละรายการเท่านั้น . JComboBox สามารถแก้ไขหรืออ่านอย่างเดียวได้ . getSelectedItem() วิธีการ สามารถใช้เพื่อรับรายการที่เลือกหรือป้อนจากกล่องคำสั่งผสม เราสามารถเรียกเมนูป๊อปอัปจาก JComboxBox เมื่อผู้ใช้คลิกขวาโดยใช้ MouseListener อินเทอร์เฟซและจำเป็นต้องแทนที่ mouseReleased() กระบวนการ. เมธอด isPopupTrigger() ของ MouseEvent สามารถใช้คลาสเพื่อแสดงเมนูป๊อปอัปได้
ตัวอย่าง
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(); } }
ผลลัพธ์