Swing 表格(JTable)的使用 您所在的位置:网站首页 jtable的表格行宽 Swing 表格(JTable)的使用

Swing 表格(JTable)的使用

2023-09-07 15:19| 来源: 网络整理| 查看: 265

表格是程序中一种很常见的组件,Swing中的表格是:JTable,表格的功能是把数据以二维表格的形式显示出来,并且允许用户对表格中的数据进行编辑。今天我们来介绍一下JTable的简单使用 一、构造方法:

构造方法1: JTable(int numRows,int numColumns):使用 DefaultTableModel 构造具有 numRows 行和 numColumns 列个空单元格的 JTable。

在这里插入图片描述 在这里插入图片描述

构造方法2: JTable(Object[][] rowData,Object[] columnNames):构造一个 JTable 来显示二 维数组 rowData 中的值,其列名称为 columnNames。 在这里插入图片描述 在这里插入图片描述

二、常用方法

在这里插入图片描述

三、实例 创建一个实例,点击删除可以删除选中的表格行。 package swing; import java.awt.BorderLayout; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.ListSelectionModel; import javax.swing.border.EmptyBorder; import javax.swing.table.DefaultTableModel; /** * JTabel 表格 * Swing 中表格的数据可以根据需求动态变化,本例子演示如何从表格中删除用户选择的行 */ public class Demo32_JTable2 extends JFrame{ private JPanel contentPane; private JTable table; public static void main(String[] args){ Demo32_JTable2 frame = new Demo32_JTable2(); } public Demo32_JTable2() { addWindowListener(new WindowAdapter(){ @Override public void windowActivated(WindowEvent e){ do_this_windowActivated(e); } }); setTitle("图书信息表"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); SwingUtils.setCenter(this);//设置窗体大小600*800并居中 contentPane=new JPanel(); contentPane.setBorder(new EmptyBorder(5,5,5,5)); contentPane.setLayout(new BorderLayout(0,0)); setContentPane(contentPane); JPanel panel=new JPanel(); contentPane.add(panel,BorderLayout.SOUTH); JButton button=new JButton("删除"); button.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ do_button_actionPerformed(e); } }); panel.add(button); JScrollPane scrollPane=new JScrollPane(); contentPane.add(scrollPane,BorderLayout.CENTER); table=new JTable(); table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION); scrollPane.setViewportView(table); setVisible(true); } protected void do_this_windowActivated(WindowEvent e){ DefaultTableModel tableModel=(DefaultTableModel) table.getModel(); //获得表格模型 tableModel.setRowCount(0); //清空表格中的数据 tableModel.setColumnIdentifiers(new Object[]{"书名","出版社","出版时间","丛书类别","定价"}); //设置表头 tableModel.addRow(new Object[]{"Java从入门到精通(第2版)","清华大学出版社","2010-07-01","软件工程师入门丛书","59.8元"}); //增加列 tableModel.addRow(new Object[]{"PHP从入门到精通(第2版)","清华大学出版社","2010-07-01","软件工程师入门丛书","69.8元"}); tableModel.addRow(new Object[]{"Visual Basic从入门到精通(第2版)","清华大学出版社","2010-07-01","软件工程师入门丛书","69.8元"}); tableModel.addRow(new Object[]{"Visual C++从入门到精通(第2版)","清华大学出版社","2010-07-01","软件工程师入门丛书","69.8元" }); table.setRowHeight(30); table.setModel(tableModel); //应用表格模型 } protected void do_button_actionPerformed(ActionEvent e){ DefaultTableModel model=(DefaultTableModel) table.getModel(); //获得表格模型 int[] selectedRows=table.getSelectedRows(); for(int i=0;i


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有