2018-11-04 23:15:21开始写


模型类

 import javax.swing.table.DefaultTableModel;//导入包

 public class LocalTableModel extends DefaultTableModel {//继承
Class[] types = new Class[] {java.lang.String.class, java.lang.String.class};// 表头的类类型
boolean[] canEdit = new boolean[] {false, false};// 表头不可编辑
public LocalTableModel() {//无参构造函数 表格模型中的表头
super(new Object[][] {}, new String[] {"用户ID", "用户头像"});//第一个参数是表数据,第二个参数是一维数组,元素的表头
}
public Class getColumnClass(int columnIndex) {// 获得表头的类类型
return types[columnIndex];//返回java.lang.String.class
}
public boolean isCellEditable(int rowIndex, int columnIndex) {// 表头是否可编辑
return canEdit[columnIndex];//返回false
}
}

模型使用

 JTable table;// 表格模型
ProductTableModel productModel = new ProductTableModel();// 商品信息表模板
table = new JTable(productModel);//实例化JTable对象,参数是表格模板
scrollPane.setViewportView(table);//添加到滚动面板中显示JTable
productModel.setRowCount(0);//清除表格模型中的原有行
JDBCUtil util = new JDBCUtil();//创建Java数据库连接工具包类对象
List<Product> list = util.getProductInfo();//用来存储信息的集合
for (int i = 0; i < list.size(); i++) {//遍历一遍list(挨个访问一次)
Product product = (Product) list.get(i);//通过列表的get方法获得第i个JavaBean对象 //model是JTable的模型,调用addRow方法,参数是一维数组,数组元素是JavaBean中的变量也是数据表中的字段值,
//且是通过JavaBean的get方法获得,最后添加到JTable中
productModel.addRow(new Object[] { product.getId(), product.getListID(), product.getProductID(), product.getSocket() });
}

选择事件

int row = table.getSelectedRow();//选择某一行

userID = (String) table.getValueAt(row, 0);//获得某一行的第一个值


谢谢、Thank you、Salamat Do(撒拉玛特朵)、あリがCám o*n(嘉蒙)とゥ(阿里嘎都)、감사합니다 (勘三哈咪瘩)、terima Kasih(得力马卡系)、kob-khun(寇布库恩)、dhanyavaad(达尼阿瓦德)、toda(透达)、te?ekkür ederim(特谢库尔埃戴里姆)、Dzie,kuje(以库以而)、Spasibo(思巴喜柏)、Danke(但可)、shokran(休克朗)、Obrigada(欧布哩嘎搭)、dank u(当Q)、Merci(梅呵西)、Gracias(格拉喜亚思)、Grazie(格啦姬)、Благодарности、Tak、Kiitos、Díky、Hvala、Mul?umesc、Takk、Ευχαριστ

JTable的模型的更多相关文章

  1. JavaBean和List<JavaBean>

    2018-11-04 23:04:03开始写 返回泛型为User是列表 public List<User> getUserInfo() { conn = getConn();//获取数据库 ...

  2. 【Java】在JTable中设置鼠标监听器,点击操作对应数据

    最终效果 鼠标点击JTable中任一数据,修改相应的信息. 确定点击的行和列 package com.dao; import java.awt.event.MouseAdapter; import j ...

  3. Java学习笔记——可视化Swing中JTable控件绑定SQL数据源的两种方法

    在 MyEclipse 的可视化 Swing 中,有 JTable 控件. JTable 用来显示和编辑常规二维单元表. 那么,如何将 数据库SQL中的数据绑定至JTable中呢? 在这里,提供两种方 ...

  4. JAVA GUI学习 - JTable表格组件学习_C ***

    /** * JTable高级应用 * @author Wfei * */ public class JTableKnow_C extends JFrame { JTable jTable; MyJMe ...

  5. JAVA GUI学习 - JTable表格组件学习_A ***

    public class JTableKnow_A extends JFrame { public JTableKnow_A() { this.setBounds(300, 100, 400, 300 ...

  6. JTable demo

    简单讲就是在没有使用layout manager的时候用setSize,在使用了layout manager 的时候用setPreferredSize 并且setPreferredSize通常和set ...

  7. Swing之JTable的详细介绍(转)

    表格(Table)的使用与介绍8-1:使用JTable组件:类层次结构图:java.lang.Object--java.awt.Component--java.awt.Container--javax ...

  8. 【转】java JTable排序和过滤

    JTable排序 在Java SE 6中除了java.awt被更新外,javax.swing同时也有了很大的改进.在C/S程序中我们会经常使 用到"表".如我们可以在查询数据库后将 ...

  9. JTable,TableModel,DefaultTableModel与AbstractTableModel的小结

    1 表格JTable并不存储自己的数据,而是从表格模型那里获取它的数据 2 TableModel本身是一个interface,在这个interface里面定义了若干的方法,包括了存取表格字段(cell ...

随机推荐

  1. tensorflow入门笔记(四) tf.summary 模块

    模块内的函数: tf.summary.audio(name, tensor, sample_rate, max_outputs=3, collections=None, family=None) 输出 ...

  2. Web Deploy远程部署配置图解

    原文链接:https://jingyan.baidu.com/album/642c9d34e614de644a46f783.html

  3. 遍历出文档内所有元素的tagName

    //深度优先 function deepLogTagNames(parentNode){ console.log(parentNode.tagName); const childNodes=paren ...

  4. spring学习(03)之bean实例化的三种方式

    bean实体例化的三种方式 在spring中有三中实例化bean的方式: 一.使用构造器实例化:(通常使用的一个方法,重点) 二.使用静态工厂方法实例化: 三.使用实例化工厂方法实例化 第一种.使用构 ...

  5. .NET Core 使用 Kestrel

    Kestrel介绍 Kestrel是一个基于libuv的跨平台web服务器 在.net core项目中就可以不一定要发布在iis下面了 Kestrel体验 可以使用useUrls来设置一个请求的地址 ...

  6. linux init命令

    init命令用于切换到指定的运行级别,用法如下: [root@localhost ~]# init //关机 [root@localhost ~]# init //切换到单用户模式/救援模式 [roo ...

  7. WordPress如何屏蔽恶意关键词搜索

    我们在用WordPress建站比较方便,但如果网站有一定的权重后,一些不怀好意的人就会过来制作恶意内容,比如故意搜索邪恶的关键词.垃圾评论等,那我们如何屏蔽恶意搜索关键词呢?不会很难,会写点代码的朋友 ...

  8. Redis和Memcache的区别是什么

    Redis和Memcache都是内存数据库,但它们之间还是有区别的,跟着ytkah看看Redis和Memcache的区别吧 Redis 支持多种数据结构,如string,list,dict,set,z ...

  9. 打开Delphi 10.1 berlin提示脚本错误的解决方法

    HKEY_CURRENT_USER\SOFTWARE\Embarcadero\BDS\18.0\Known IDE Packages $(BDS)\Bin\CommunityToolbar240.bp ...

  10. echarts给数据视图添加表格样式

    1,准备好样式 <style>.myTable {margin: 0 auto;/* height: 300px; */width: 700px;} .myTitle {backgroun ...