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.tableTableColumn类用于通过table.getColumnModel().getColumn(0)获取表格的第一列。

然后,我们将使用用JComboBox初始化的DefaultCellEditor调用TableColumnsetCellEditor()方法。此设置使第一列单元格显示下拉列表。最后,将表格添加到JFrame中,然后显示。

更新于:2024年8月19日

2K+ 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告