Java程式:在JTable中新增組合框
在這篇文章中,我們將學習如何在Java Swing中向JTable新增JComboBox。JComboBox允許您在表格單元格內建立一個下拉列表,使使用者能夠從預定義的選項中進行選擇。
在JTable中新增組合框的步驟
以下是向JTable新增組合框的步驟:
- 首先匯入必要的包。
- 用5行5列初始化一個JTable。
- 建立一個JComboBox並向其中新增專案。
- 獲取表格的第一列,並將其單元格編輯器設定為JComboBox。
- 將表格新增到JFrame。
- 打印表格
Java程式:在JTable中新增組合框
以下是向JTable新增組合框的示例:
package my; import java.awt.Color; import java.awt.Font; import javax.swing.DefaultCellEditor; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.table.JTableHeader; import javax.swing.table.TableColumn; public class SwingDemo { public static void main(String[] argv) throws Exception { JTable table = new JTable(5, 5); Font font = new Font("Verdana", Font.PLAIN, 12); table.setFont(font); table.setRowHeight(30); table.setBackground(Color.orange); table.setForeground(Color.white); TableColumn testColumn = table.getColumnModel().getColumn(0); JComboBox<String> comboBox = new JComboBox<>(); comboBox.addItem("Asia"); comboBox.addItem("Europe"); comboBox.addItem("North America"); comboBox.addItem("South America"); comboBox.addItem("Africa"); comboBox.addItem("Antartica"); comboBox.addItem("Australia"); testColumn.setCellEditor(new DefaultCellEditor(comboBox)); JFrame frame = new JFrame(); frame.setSize(600, 400); frame.add(new JScrollPane(table)); frame.setVisible(true); } }
輸出
輸出如下所示,在JTable中顯示JComboBox:
程式碼解釋
在給定的程式碼中,我們將從匯入類開始,這裡javax.swing包提供了必要的類。首先,建立一個具有5行5列的JTable。然後例項化一個JComboBox,並使用addItem()方法填充大洲名稱。來自javax.swing.table的TableColumn類用於透過table.getColumnModel().getColumn(0)獲取表格的第一列。
然後,我們將使用用JComboBox初始化的DefaultCellEditor呼叫TableColumn的setCellEditor()方法。此設定使第一列單元格顯示下拉列表。最後,將表格新增到JFrame中,然後顯示。
廣告