资源简介
这里是我最近学习swing编程中用到的一些demo JTable CURD 事件绑定 进度条 线程处理等等demo,总之作为新手的你,看这个demo你可以学到很多。这里还采用了2-3中布局方式实现布局,由于项目其他保密性,这里只是一个demo分支,有些功能可能并不能导入使用,需要自己整理一下,巨大多数的类可以直接运行看效果的。
代码片段和文件信息
package tom.change.demo.Jtable单元格合并;
import java.awt.Point;
import java.util.Arrays;
import java.util.List;
import java.util.Vector;
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import javax.swing.table.AbstractTableModel;
public class DefaultGridBagTableModel implements GridBagModel TableModelListener{
protected AbstractTableModel model;
protected List> gridInfo;
DefaultGridBagTableModel(AbstractTableModel model){
gridInfo = new Vector>();
setTableModel(model);
}
public void setTableModel(AbstractTableModel model){
if( model != null && model != this.model ){
if( this.model != null )
this.model.removeTableModelListener(this);
//防止多次添加监听器
model.removeTableModelListener(this);
model.addTableModelListener(this);
this.model = model;
clearMergence();
}
}
public void clearMergence(){
if( gridInfo == null )
gridInfo = new Vector>();
else
gridInfo.clear();
if( model == null )
return;
//初始化,每个格子占的格子数为(11);
for(int row=model.getRowCount(); --row>=0;){
List infos = new Vector();
gridInfo.add(infos);
for(int col=model.getColumnCount(); --col>=0;){
infos.add(getDefaultPoint());
}
}
}
public Point getDefaultPoint(){
return new Point(11);
}
@Override
public boolean canMergeCells(int[] rows int[] columns) {
if( rows == null || columns == null ) return false;
Arrays.sort(rows);
for(int index=0; index if( rows[index+1] - rows[index] > 1 )
return false;
}
Arrays.sort(columns);
for(int index=0; index if( columns[index+1] - columns[index] > 1 )
return false;
}
return true;
}
@Override
public int getCellState(int row int column) {
Point grid = getGrid(row column);
if( grid == null ) return DEFAULT;
if( grid.x>1 || grid.y>1 )
return MERGE;
if( grid.x<=0 || grid.y<=0 )
return COVERED;
return DEFAULT;
}
@Override
public int getColumnGrid(int row int column) {
if( gridInfo != null && row >=0 && row < gridInfo.size() ){
List gridRow = gridInfo.get(row);
if( gridRow != null && column >=0 && column < gridRow.size() )
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 7305 2017-01-16 13:56 demo\Jtable单元格合并\DefaultGridBagTableModel.java
文件 2082 2017-01-16 13:55 demo\Jtable单元格合并\GridBagModel.java
文件 6427 2017-01-16 13:54 demo\Jtable单元格合并\GridBagTable.java
文件 17760 2017-01-16 13:57 demo\Jtable单元格合并\GridBagTableUI.java
文件 1217 2017-01-16 13:58 demo\Jtable单元格合并\Test.java
文件 1836 2017-01-19 11:13 demo\JTable学习\SimpleJTable.java
文件 4051 2017-01-18 15:40 demo\JTable学习\SimpleTableDemo.java
文件 6144 2017-01-19 15:52 demo\JTable学习\TableRenderDemo.java
文件 9700 2017-01-18 16:08 demo\JTable学习\TableSelectionDemo.java
文件 2942 2017-01-19 16:38 demo\JTable学习\自己JTable整合\TableModel\MyTableModel.java
文件 3693 2017-01-19 16:36 demo\JTable学习\自己JTable整合\Test.java
文件 963 2017-01-16 14:45 demo\JTable按钮点击事件\ButtonTable.java
文件 1483 2017-01-16 14:43 demo\JTable按钮点击事件\MyRenderz.java
文件 1074 2017-01-16 14:36 demo\JTable按钮点击事件2\Main.java
文件 518 2017-01-16 14:24 demo\JTable按钮点击事件2\MyButton.java
文件 1464 2017-01-16 14:40 demo\JTable按钮点击事件2\MyButtonEditor.java
文件 565 2017-01-16 14:22 demo\JTable按钮点击事件2\MyButtonRender.java
文件 176 2017-01-16 14:24 demo\JTable按钮点击事件2\MyEvent.java
文件 3844 2017-01-19 13:54 demo\JTable更新\Test.java
文件 3526 2017-01-16 13:50 demo\Jtable添加数据点击事件\JTableTest.java
文件 1845 2017-01-16 13:41 demo\Jtable添加数据点击事件\UserMouseAdapter.java
文件 2359 2017-01-18 13:34 demo\全选反选\CheckHeaderCellRenderer.java
文件 647 2017-01-18 13:21 demo\全选反选\CheckTableModle.java
文件 2772 2017-01-18 13:24 demo\全选反选\Testfr
文件 925 2017-01-16 17:22 demo\线程\MutliThread.java
文件 311 2017-01-16 17:23 demo\线程\MutliThreadDemo.java
文件 2919 2017-01-16 16:51 demo\进度条\ProgressBar.java
目录 0 2017-01-19 13:57 demo\JTable学习\自己JTable整合\TableModel
目录 0 2017-01-19 14:06 demo\JTable学习\自己JTable整合
目录 0 2017-01-16 13:58 demo\Jtable单元格合并
............此处省略12个文件信息
- 上一篇:java自定义Jfr
ame风格窗体 - 下一篇:tomcatPluginV331
相关资源
- java 毕业设计 进销存管理系统 源码
- java图片浏览器跨平台运行程序与源码
- 基于java的在线考试系统-毕业设计
- 微博系统(Java源码,servlet+jsp),适
- java串口通信全套完整代码-导入eclip
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
川公网安备 51152502000135号
评论
共有 条评论