展开全部

JTable 有很多用来62616964757a686964616fe59b9ee7ad9431333337393561自定义其呈现和编辑的工具,同时提供了这些功能的默认设置,从而可以轻松地设置简单表。

设计使用 JTable

的应用程序时,务必要注意用来表示表数据的数据结构。DefaultTableModel 是一个模型实现,它使用一个

Vector 来存储所有单元格的值,该 Vector 由包含多个 Object 的

Vector 组成。除了将数据从应用程序复制到 DefaultTableModel 中之外,还可以用

TableModel 接口的方法来包装数据,这样可将数据直接传递到

JTable,如上例所示。这通常可以提高应用程序的效率,因为模型可以自由选择最适合数据的内部表示形式。在决定使用

AbstractTableModel 还是使用 DefaultTableModel

方面有一个好的实践经验,即在创建子类时使用 AbstractTableModel 作为基类,在不需要创建子类时则使用

DefaultTableModel。

下面给个例子import java.awt.BorderLayout;

import java.awt.event.MouseEvent;

import javax.swing.JFrame;

import javax.swing.JScrollPane;

import javax.swing.JTable;

import javax.swing.WindowConstants;

import javax.swing.table.JTableHeader;

/**

* @ClassName: JtableCellTips

* @Description: Description of this class

* @author zxt于 2012-11-15 上午09:25:28

*/

public class JtableCellTips {

private JTable table;

String[] namestooltip = {"wow ncp  name", "some word" };

public JtableCellTips() {

JFrame f = new JFrame();

f.setSize(300, 200);

Object[][] playerInfo = { {"提里奥.弗丁", "种族不代表荣耀,我见过最高尚的兽人,也见过最卑劣的人类。" }, {"莫格莱尼", "生命本身毫无意义,只有死亡才能让你了解人性的真谛。" } };

String[] Names = {"姓名", "台词" };

table = new JTable(playerInfo, Names) {

public String getToolTipText(MouseEvent e) {

int row = table.rowAtPoint(e.getPoint());

int col = table.columnAtPoint(e.getPoint());

String tiptextString = null;

if (row > -1 && col > -1) {

Object value = table.getValueAt(row, col);

if (null != value && !"".equals(value))

tiptextString = value.toString();// 悬浮显示单元格内容

}

return tiptextString;

}

protected JTableHeader createDefaultTableHeader() {

return new JTableHeader(columnModel) {

public String getToolTipText(MouseEvent e) {

String tip = null;

java.awt.Point p = e.getPoint();

int index = columnModel.getColumnIndexAtX(p.x);

int realIndex = columnModel.getColumn(index).getModelIndex();

return namestooltip[realIndex];

}

};

}

};

// 悬浮提示单元格的值

// table.addMouseMotionListener(new MouseAdapter(){

// public void mouseMoved(MouseEvent e) {

// int row=table.rowAtPoint(e.getPoint());

// int col=table.columnAtPoint(e.getPoint());

// if(row>-1 && col>-1){

// Object value=table.getValueAt(row, col);

// if(null!=value && !"".equals(value))

// table.setToolTipText(value.toString());//悬浮显示单元格内容

// else

// table.setToolTipText(null);//关闭提示

// }

// }

// });

JScrollPane scrollPane = new JScrollPane(table);

f.getContentPane().add(scrollPane, BorderLayout.CENTER);

f.setTitle("单元格悬浮提示");

f.setLocationRelativeTo(null);

f.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

f.setVisible(true);

}

public static void main(String[] args) {

new JtableCellTips();

}

}

你可以翻下帮助,里面有好多模型可用,有问题也可以再追问或私聊,good luck!~

ptable java_ttable怎么在java中编写相关推荐

  1. 如何使用Spring和Velocity在Java中编写HTML电子邮件

    在这篇文章中,我将介绍如何使用Spring和Velocity格式化和发送自动电子邮件. Spring仅提供创建简单文本电子邮件的功能,这对于简单的情况很好,但是在典型的企业应用程序中,由于多种原因,您 ...

  2. java代码中添加事务_C#和JAVA中编写事务代码

    C#  DAL层代码,执行多条增删改,使用事务操作: /// /// 执行 多条增删改 (非查询语句) /// /// /// /// public static int ExcuteNonQuery ...

  3. java mysql 占位符_在Java中编写带占位符的SQL语句

    C#中SQL中带占位符的语句 假设有一张学员信息表Student,通过表中的ID来找学员,查询的SQL语句如下 string sql = string.Format("select * fr ...

  4. 如何在java输入_怎么在java中编写输入语句?

    (1) JDK 1.5.0 及其以上版本提供的Scanner类为输入提供了良好的基础,很好地优化Java的输入问题.代码如下: import java.io.* import java.util.* ...

  5. 如何在Java中编写正确的微基准测试?

    您如何用Java编写(并运行)正确的微基准测试? 我正在寻找一些代码示例和注释,以说明要考虑的各种问题. 示例:基准测试应测量时间/迭代或迭代/时间,为什么? 相关: 秒表基准测试是否可以接受? #1 ...

  6. java的equals方法_在Java中编写完美的equals方法

    相对于C++,Java并没有重载操作符,所以对于非基本类型都需要使用equals方法比较相等性.Object提供了equals方法比较两个对象,但对于用户自定义类而言Object提供的版本仅仅比较两个 ...

  7. java中编写单选按钮的程序_java的单选按钮GUI程序设计

    单选按钮在GUI程序设计中的概念来自于老式的电子管汽车收音机的机械按钮:当我们按下一个按钮时,其它的按钮就会弹起.因此它允许我们强制从众多选择中作出单一选择. AWT没有单独的描述单选钮的类;取而代之 ...

  8. 在Java中编写实现_在运行时编写和实现新的Java类文件

    是否可以通过某种方式将新的Java类"导入"到正在运行的程序中并加以利用? 我可以让一个程序创建一个类型为'.java'的新文件,然后将其包含在项目文件中并引用它,而不必重新启动该 ...

  9. java中如果写设置密码,在java中编写一个多字母换位密码[关闭]

    这就是我目前所拥有的 . 它应该找到以明文输入的字母,将它(区分大小写)与字母表中的字母匹配,然后根据输入的oddkey或evenkey的数字移位,我将在稍后实现 . 但目前,这是我得到的输出 . w ...

最新文章

  1. chrono 使用备注
  2. netty 文件传输服务器,Netty之二进制文件传输
  3. Jboss4集群配置之四:启动Jboss集群
  4. Scrapy框架的学习(11.scrapy框架中的下载中间件的使用(DownloaderMiddlewares))
  5. 160809308周子济第7次作业
  6. Java摩托车汽车轮胎数量,摩托车轮子上的知识,你知道多少?
  7. 关于eclipse没有http jar的问题解释
  8. 笔记56 | 管理网络的使用
  9. FastDFS特性及问题思考
  10. AVOD--avod/core/format_checker.py代码理解
  11. UEFI中的Protocol
  12. 7.8 W 字总结!Java 8—Java 10 特性详解
  13. 【ET500P】高清摄录,相位对焦
  14. 虚拟路由冗余协议(VRRP)
  15. 短视频素材怎么找?怎么做短视频运营?
  16. sipp介绍与脚本撰写(一)
  17. linux中分隔符IFS
  18. 无序列表将点替换成图片
  19. Visual2022安装步骤社区版,专业版or企业版安装(附注册码)(没有桌面图标的解决方法)
  20. 《数据结构与算法》第二版-陈卫卫-陆军工程大学811数据结构教材 第1-2章 参考答案

热门文章

  1. 微信小程序开发注意事项
  2. 尝试做个公众号,歌曲类型的,有兴趣可以关注一下
  3. linux系统安装telnet服务
  4. Vs Code配置前端环境及运行
  5. HTML5期末大作业:全屏页面滚动漫画风格个人主页网站设计 (HTML+CSS)
  6. Null ModelAndView returned to DispatcherServlet with name ‘springmvc‘: assuming HandlerAdapter compl
  7. Windows10安装开源Mujoco
  8. 恶意.NET安全攻防(一):使用ETW隐藏你的.NET
  9. linux下安装nodejs的方式
  10. Linux系统:基础IO