社区
Java SE
帖子详情
JTable里怎么监听调整Column宽度的事件。
kofight
2003-04-23 06:16:09
我这有两个表,上下排列着,要求上面的列宽度变化时,下面的宽度也跟着变,和上面的对齐。
...全文
65
5
打赏
收藏
JTable里怎么监听调整Column宽度的事件。
我这有两个表,上下排列着,要求上面的列宽度变化时,下面的宽度也跟着变,和上面的对齐。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
crazyboy123
2003-04-24
打赏
举报
回复
我写的一个简单的小例子
————————————————————————————————————————
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
public class Frame1 extends JFrame {
JPanel contentPane;
BorderLayout borderLayout1 = new BorderLayout();
JScrollPane jScrollPane1 = new JScrollPane();
JScrollPane jScrollPane2 = new JScrollPane();
Object[][] tabledata = {{"1","2","3"},
{"1","2","3"}
};
Object[] headdata = {"a","b","c"};
DefaultTableModel model1 = new DefaultTableModel();
DefaultTableModel model2 = new DefaultTableModel();
JTable jTable1 = new JTable(model1);
JTable jTable2 = new JTable(model2);
/**Construct the frame*/
public Frame1() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
/**Component initialization*/
private void jbInit() throws Exception {
//setIconImage(Toolkit.getDefaultToolkit().createImage(Frame1.class.getResource("[Your Icon]")));
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(borderLayout1);
this.setSize(new Dimension(400, 300));
this.setTitle("Frame Title");
jScrollPane1.setPreferredSize(new Dimension(4, 150));
contentPane.add(jScrollPane1, BorderLayout.NORTH);
jScrollPane1.getViewport().add(jTable1, null);
contentPane.add(jScrollPane2, BorderLayout.CENTER);
jScrollPane2.getViewport().add(jTable2, null);
model1.setDataVector(tabledata,headdata);
model2.setDataVector(tabledata,headdata);
JTableHeader head1=jTable1.getTableHeader();
head1.addMouseMotionListener(new java.awt.event.MouseMotionAdapter(){
public void mouseDragged(MouseEvent e) {
head_dragger();
}
});
}
/**Overridden so we can exit when window is closed*/
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
public void head_dragger(){
TableColumn tablecolumn ;
for(int i=0;i<jTable1.getColumnModel().getColumnCount();i++){
tablecolumn = jTable2.getColumnModel().getColumn(i);
int W = jTable1.getColumnModel().getColumn(i).getWidth();
tablecolumn.setWidth(W);
tablecolumn.setPreferredWidth(W);
}
}
}
Yonee
2003-04-24
打赏
举报
回复
看错了,不好意思
public class MyTableColumnModelListener implements TableColumnModelListener {
JTable table;
public MyTableColumnModelListener(JTable table) {
this.table = table;
}
public void columnAdded(TableColumnModelEvent e) {
}
public void columnRemoved(TableColumnModelEvent e) {
}
public void columnMoved(TableColumnModelEvent e) {
}
public void columnMarginChanged(ChangeEvent e) {
//加这里
}
public void columnSelectionChanged(ListSelectionEvent e) {
}
}
litsnake1
2003-04-24
打赏
举报
回复
帮你up
Yonee
2003-04-24
打赏
举报
回复
//关闭自动模式
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
//改变宽度
int vColIndex = 0;
TableColumn col = table.getColumnModel().getColumn(vColIndex);
int width = 100;
col.setPreferredWidth(width);
kofight
2003-04-24
打赏
举报
回复
谁知道啊?急
Java学习指南(Swing入门篇)
☆ Java程序员居家旅行必备课程 ☆Java学习指南系列的第3篇,承接高级语法篇,介绍基于Java Swing的GUI界面程序开发的技术。Swing系列教程分为两篇:(1) Swing入门篇 (2) Swing高级篇。通过本篇的训练,学员可以较容易的掌握Java的主要语法,对常用的API都有很好的掌握。本篇内容至少包含:- 基本控件的使用- 布局管理器的使用- 自定义布局- 图片的加载及使用- 对话框,及自定义对话框- 菜单和工具栏- 自定义绘图- JList 列表框的用法,以及单元格的自定义显示-
JTable
表格的用法,以及单元格的自定义显示- 一个基于
JTable
和 JSON 的学生管理系统- Java Swing应用程序的打包和发布技术,快速启动器机制等。本篇穿插多个实例,通过实例,综合运用多种技术,使学员对项目的构建有所有认识。
JTable
简单实用,实现显示,指定行列选择,内容不可编辑,设置每列
宽度
,添加
监听
事件
,获取点击的行列和对应的内容.
JTable
简单实用,实现显示,指定行列选择,内容不可编辑,设置每列
宽度
代码如下 import javax.swing.*; import java.util.*; import java.awt.event.*; import javax.swing.table.DefaultTableModel; public class SimpelTable{ JFrame jf=new JF...
java GUI界面之
JTable
详解
JTable
是将数据以表格的形式显示给用户看的一种组件,它包括行和列,其中每列代表一种属性,例如:学号,姓名,成绩等等。而每行代表的是一个实体,例如一个学生。在
JTable
中,默认情况下列会平均分配父容器的
宽度
,你可以通过鼠标改变列的
宽度
,还可以交换列的排列顺序,当然,这些都可以通过代码进行限定和修改。一下就进入正题,介绍
JTable
的一些构造函数,
JTable
有许多构造函数,具体的请查看API文
Java - 表格
JTable
的用法
第一部分:
JTable
用来显示和编辑规则的二维单元表。它位于javax.swing包下面。 构造方法摘要
JTable
() 构造默认的
JTable
,使用默认的数据模型、默认的列模型和默认的选择模型对其进行初始化。
JTable
tableView = new
JTable
(); //不含有数据和列名 J
java swing的Table
Column
属性设置后失效的原因与解决办法
在java的swing开发中,
JTable
必然是一个常用的UI组件,而在
JTable
中常用的操作就是动态增删数据列。不知道在使用
JTable
动态增删列的时候有没有发现,对Table
Column
设置属性后再增加列会导致Table
Column
的属性失效,下面就来对这个问题一探究竟。
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章