资源简介
从网上一个博文上搜集来的一些Swing特效的例子,如xp折叠效果_foldered_pane,鼠标悬停提示_tooltip,玻璃效果闪烁_glassbox,日历组件,环形右键弹出菜单等等.....绝对物超所值!
其中部分例子为jar形式,可直接运行...其余大部分是netbeans工程形式,在dist文件夹下也有jar文件,也可直接运行....需要了解源码的,请自行反编译....
代码片段和文件信息
import java.util.Enumeration;
import javax.swing.JTable;
import javax.swing.event.TableModelEvent;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.JTableHeader;
import javax.swing.table.TableColumn;
/**
* 支持排序的TableModel
*
* @author sundw
*
*/
public abstract class AbstractSortedTableModel extends AbstractTableModel
{
/**
* 当前使用该Model的table
*/
private SortedTable table;
/**
* 当前需排序的column
*/
private int currentSortedColumn = -1;
/**
* 当前的排序方向
*/
private boolean asc = true;
/**
* 是否按照内容自动调整列宽
*/
private boolean autoResizeColumnWidths = false;
/**
* 得到当前model所属的table
*
* @return
*/
public SortedTable getTable()
{
return table;
}
/**
* 设置当前model所属的table
*
* @param table
*/
void setTable(SortedTable table)
{
this.table = table;
}
/**
* 被fireModelSetted调用,初始化当前分页状态
*/
protected void modelSetted()
{
currentSortedColumn = -1;
asc = true;
if (table != null)
autoResizeColumnWidths = table.isAutoResizeColumnWidths();
}
/**
* 触发modelsetted方法,一般在该model被set到table中时,调用modelSetted
*/
public void fireModelSetted()
{
modelSetted();
}
/**
* 排序
*
* @param column
* 需排序的column
*/
public void sort(int column)
{
if (isSortedColumn(column))
{
if (this.currentSortedColumn == column)
{
asc = !asc;
}
else
{
this.currentSortedColumn = column;
asc = true;
}
updateData();
}
}
/**
* 更新数据
*/
protected void updateData()
{
fireTableDataChanged();
}
/**
* 得到当前排序的column
*
* @return
*/
public int getCurrentSortedColumn()
{
return currentSortedColumn;
}
/**
* 返回当前排序状态是否是升序
*
* @return
*/
public boolean isAsc()
{
return asc;
}
/**
* 返回当前table是否是自动调整列宽的状态
*
* @return
*/
protected boolean isAutoResizeColumnWidths()
{
return autoResizeColumnWidths;
}
/**
* 返回当前table是否自动调整列宽
*
* @param autoResizeColumnWidths
*/
protected void setAutoResizeColumnWidths(boolean autoResizeColumnWidths)
{
this.autoResizeColumnWidths = autoResizeColumnWidths;
}
/**
* 返回该column是否是需要排序的column
*
* @param column
* @return
*/
public abstract boolean isSortedColumn(int column);
/**
* 覆盖父类的方法,在更新表格数据后,自动调整列宽
*/
public void fireTableChanged(TableModelEvent e)
{
super.fireTableChanged(e);
if (autoResizeColumnWidths)
autoResizeColumnWidths();
}
/**
* 根据当前表格的数据,自动调整列宽
*
*/
private void autoResizeColumnWidths()
{
JTable table = this.getTable();
JTableHeader header = table.getTableHeader();
int rowCount = table.getRowCount();
Enumeration columns = table.getColumnModel().getColumns();
while (columns.hasMoreElements())
{
TableColumn column = (TableColumn) columns.nextElement();
int col = header.getColumnModel().getColumnIndex(
c
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3089 2010-03-24 21:22 Swing特效\JTable分页\分页\AbstractSortedTableModel.class
文件 3875 2010-03-24 20:59 Swing特效\JTable分页\分页\AbstractSortedTableModel.java
文件 353 2010-03-24 21:22 Swing特效\JTable分页\分页\CommonSortedTableDataUpdater.class
文件 561 2010-03-24 21:05 Swing特效\JTable分页\分页\CommonSortedTableDataUpdater.java
文件 1394 2010-03-24 21:22 Swing特效\JTable分页\分页\CommonSortedTableModel.class
文件 1860 2010-03-24 21:05 Swing特效\JTable分页\分页\CommonSortedTableModel.java
文件 604 2010-03-24 21:22 Swing特效\JTable分页\分页\DefaultNavigator$1.class
文件 604 2010-03-24 21:22 Swing特效\JTable分页\分页\DefaultNavigator$2.class
文件 604 2010-03-24 21:22 Swing特效\JTable分页\分页\DefaultNavigator$3.class
文件 604 2010-03-24 21:22 Swing特效\JTable分页\分页\DefaultNavigator$4.class
文件 604 2010-03-24 21:22 Swing特效\JTable分页\分页\DefaultNavigator$5.class
文件 1159 2010-03-24 21:22 Swing特效\JTable分页\分页\DefaultNavigator$6.class
文件 9206 2010-03-24 21:22 Swing特效\JTable分页\分页\DefaultNavigator.class
文件 12655 2010-03-24 21:04 Swing特效\JTable分页\分页\DefaultNavigator.java
文件 1325 2010-03-24 21:22 Swing特效\JTable分页\分页\DefaultSortedHeaderCellRenderer.class
文件 2918 2010-03-24 21:01 Swing特效\JTable分页\分页\DefaultSortedHeaderCellRenderer.java
文件 1183 2010-03-26 12:53 Swing特效\JTable分页\分页\ExamplePanel$MySortedTableDataUpdater.class
文件 1042 2010-03-26 12:53 Swing特效\JTable分页\分页\ExamplePanel$MySortedTableModel.class
文件 1481 2010-03-26 12:53 Swing特效\JTable分页\分页\ExamplePanel.class
文件 2385 2010-03-24 21:23 Swing特效\JTable分页\分页\ExamplePanel.java
文件 158 2010-03-24 21:22 Swing特效\JTable分页\分页\Navigatable.class
文件 330 2010-03-24 21:02 Swing特效\JTable分页\分页\Navigatable.java
文件 535 2010-03-24 21:22 Swing特效\JTable分页\分页\SortedTable$1.class
文件 2078 2010-03-24 21:22 Swing特效\JTable分页\分页\SortedTable.class
文件 3175 2010-03-24 21:06 Swing特效\JTable分页\分页\SortedTable.java
文件 842 2010-03-24 21:22 Swing特效\JTable分页\分页\TextFieldJumpTo$JumpToDocument.class
文件 496 2010-03-24 21:22 Swing特效\JTable分页\分页\TextFieldJumpTo.class
文件 996 2010-03-24 21:22 Swing特效\JTable分页\分页\UpAndDownArrow.class
文件 2296 2007-06-10 17:14 Swing特效\xp折叠效果_foldered_pane\foldered_pane\build\classes\dyno\swing\beans\CaptionButton.class
文件 6971 2007-06-10 17:14 Swing特效\xp折叠效果_foldered_pane\foldered_pane\build\classes\dyno\swing\beans\CaptionButtonUI.class
............此处省略667个文件信息
相关资源
- java图书管理系统jfinal实现
- 百度地图显示多点坐标并连线显示用
- RXTX源代码jar包以及
- 用Java+MS SQL开发的物流管理系统含源代
- Java版住院管理系统
- excel导出添加水印
- Java Socket 模拟 Ftp Server/Client
- Javaweb大作业代码
- java基于servlet框架实现的CRM客户关系管
- jena2.6.4.jar and jena2.6.4-src
- 疯狂Java讲义+疯狂+Java讲义
- JavaEE开发环境搭建.docx
- javaweb课程资源管理系统.zip
- 翁恺java课程配套ppt课件
- 仓库管理系统(JAVA)源码
- app破解工具以及教程
- 疯狂JAVA讲义第二版源码
- JavaEE 高校学生选课系统Struts2 和hibe
- javaEE做的NBA网站源码
- java长途汽车站售票系统毕业设计程序
- java门诊信息管理系统毕业设计程序
- java动态树形菜单与分页
- Java直接通过连接数据库生成对应的
- 图书馆管理系统用java+sql server2000实现
- Java利用WebSocket实现聊天系统源码
- 小型电子商务系统 jsp java web
- Aspose word for java-14.11最新完美破解版,
- aspose words for java 18.9 最新完美破解版
- mysql-connector-java-5.1.7
- java 仓库管理系统
评论
共有 条评论