Swing之JTable篇采用模板形式控制表格

2024-01-04 02:48

本文主要是介绍Swing之JTable篇采用模板形式控制表格,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

开发中我们经常会用模板来初始化表,这样可以在初始化的时候控制表格内容。还可以重写表模板中的方法来对表做控制。
此抽象类为 TableModel 接口中的大多数方法提供默认实现。它负责管理侦听器,并为生成 TableModelEvents 以及将其调度到侦听器提供方便。要创建一个具体的 TableModel 作为 AbstractTableModel 的子类,只需提供对以下三个方法的实现:

  public int getRowCount();
  public int getColumnCount();
  public Object getValueAt(int row, int column);

实现AbstractTableModel接口对表模板做控制。

选中表单元格后,单击按钮对单元格数据做+1操作
import java.awt.BorderLayout;   
import java.awt.event.ActionEvent;   
import java.awt.event.ActionListener;   import javax.swing.JButton;   
import javax.swing.JFrame;   
import javax.swing.JScrollPane;   
import javax.swing.JTable;   
import javax.swing.table.AbstractTableModel;   public class SetValueAtToSetValue extends JFrame {   public SetValueAtToSetValue() {   final AbstractTableModel model = new MyModel();   final JTable table = new JTable(model);   getContentPane().add(new JScrollPane(table), BorderLayout.CENTER);   model.setValueAt(new Integer(1), 0, 0);   JButton button = new JButton("Increment selected cell");   getContentPane().add(button, BorderLayout.SOUTH);   button.addActionListener(new ActionListener() {   public void actionPerformed(ActionEvent e) {   int row = table.getSelectedRow();   if(row >0)   {   int column = table.convertColumnIndexToModel(table.getSelectedColumn());   int currentValue = ((Integer) model.getValueAt(row, column)).intValue();   model.setValueAt(new Integer(currentValue + 1), row, column);   }   }   });   pack();   }   public static void main(String arg[]) {   SetValueAtToSetValue ex2 = new SetValueAtToSetValue();   ex2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);   ex2.setVisible(true);   }   
}   class MyModel extends AbstractTableModel {   private int[][] table = { new int[3], new int[3], new int[3] };   public MyModel() {   for (int i = 0; i < 3; i++) {   for (int j = 0; j < 3; j++) {   table[i][j] = i * j;   }   }   }   public int getColumnCount() {   return table.length;   }   public int getRowCount() {   return table[0].length;   }   public Object getValueAt(int r, int c) {   return new Integer(table[r][c]);   }   public void setValueAt(Object obj, int r, int c) {   table[r][c] = ((Integer) obj).intValue();   fireTableCellUpdated(r, c);   }   
}  

这篇关于Swing之JTable篇采用模板形式控制表格的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/567936

相关文章

使用EasyExcel实现简单的Excel表格解析操作

《使用EasyExcel实现简单的Excel表格解析操作》:本文主要介绍如何使用EasyExcel完成简单的表格解析操作,同时实现了大量数据情况下数据的分次批量入库,并记录每条数据入库的状态,感兴... 目录前言固定模板及表数据格式的解析实现Excel模板内容对应的实体类实现AnalysisEventLis

Spring Security注解方式权限控制过程

《SpringSecurity注解方式权限控制过程》:本文主要介绍SpringSecurity注解方式权限控制过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、摘要二、实现步骤2.1 在配置类中添加权限注解的支持2.2 创建Controller类2.3 Us

使用Python实现表格字段智能去重

《使用Python实现表格字段智能去重》在数据分析和处理过程中,数据清洗是一个至关重要的步骤,其中字段去重是一个常见且关键的任务,下面我们看看如何使用Python进行表格字段智能去重吧... 目录一、引言二、数据重复问题的常见场景与影响三、python在数据清洗中的优势四、基于Python的表格字段智能去重

Python中如何控制小数点精度与对齐方式

《Python中如何控制小数点精度与对齐方式》在Python编程中,数据输出格式化是一个常见的需求,尤其是在涉及到小数点精度和对齐方式时,下面小编就来为大家介绍一下如何在Python中实现这些功能吧... 目录一、控制小数点精度1. 使用 round() 函数2. 使用字符串格式化二、控制对齐方式1. 使用

Springboot控制反转与Bean对象的方法

《Springboot控制反转与Bean对象的方法》文章介绍了SpringBoot中的控制反转(IoC)概念,描述了IoC容器如何管理Bean的生命周期和依赖关系,它详细讲解了Bean的注册过程,包括... 目录1 控制反转1.1 什么是控制反转1.2 SpringBoot中的控制反转2 Ioc容器对Bea

浅析如何使用Swagger生成带权限控制的API文档

《浅析如何使用Swagger生成带权限控制的API文档》当涉及到权限控制时,如何生成既安全又详细的API文档就成了一个关键问题,所以这篇文章小编就来和大家好好聊聊如何用Swagger来生成带有... 目录准备工作配置 Swagger权限控制给 API 加上权限注解查看文档注意事项在咱们的开发工作里,API

如何利用Python实现给Excel表格截图

《如何利用Python实现给Excel表格截图》这篇文章主要为大家详细介绍了如何利用Python实现给Excel表格截图功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 我搜索了网络上的方案,感觉把 Excel 表格转换为 html 再用 platwright 截图是比China编程较顺

Spring IOC控制反转的实现解析

《SpringIOC控制反转的实现解析》:本文主要介绍SpringIOC控制反转的实现,IOC是Spring的核心思想之一,它通过将对象的创建、依赖注入和生命周期管理交给容器来实现解耦,使开发者... 目录1. IOC的基本概念1.1 什么是IOC1.2 IOC与DI的关系2. IOC的设计目标3. IOC

vue基于ElementUI动态设置表格高度的3种方法

《vue基于ElementUI动态设置表格高度的3种方法》ElementUI+vue动态设置表格高度的几种方法,抛砖引玉,还有其它方法动态设置表格高度,大家可以开动脑筋... 方法一、css + js的形式这个方法需要在表格外层设置一个div,原理是将表格的高度设置成外层div的高度,所以外层的div需要

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3