1、表格中有密码字段
columnModel.getColumn(0).setCellEditor(new DefaultCellEditor(passwordField));
这样只保证编辑状态下的遮盖符,不编辑就会显示明文。而给这一列再设一个DefaultTableCellRenderer,重写其方法
columnModel.getColumn(0).setCellRenderer(new DefaultTableCellRenderer() {
@Override
protected void setValue(Object value) {
String echoStr = null;
if (value == null || value.toString().length() == 0) {
echoStr = null;
} else {
char[] echoChar = new char[value.toString().length()];
Arrays.fill(echoChar, passwordField.getEchoChar());
echoStr = new String(echoChar);
}
super.setValue(echoStr);
}
});
,这样就可以达到编辑与非编辑状态下的密码显示了。
2、有一个问题困扰我很久,就是编辑一个单元格,输入内容后,如果此时不小心点击了表格头(不是表格体),就会出现输入的内容消失掉了。今天决定跟一下,发现原来之前添加鼠标事件只监控conClick方法,其实JTable内部是监听的mousePressed方法,并调用table.getCellEditor().stopCellEditing();方法。
table.getTableHeader().addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent e) {
if (table.getCellEditor() != null) {
table.getCellEditor().stopCellEditing();
}
super.mousePressed(e);
}
});
3、空表格占用整个scrollpane,即默认JTable只显示有内容的行列,也就类似于它的ViewPort只显示好么多,这样显示有点不协调,在JDK6里有一个setFillsViewportHeight()方法,可以实现这一点,但是早期版本没有这个方法,要重写
table = new JTable(myTableModel) {
public boolean getScrollableTracksViewportHeight() {
return getParent() instanceof JViewport
&& (((JViewport) getParent()).getHeight() > getPreferredSize().height);
}
};
分享到:
相关推荐
### Java Swing JTable 分页实现详解 #### 一、引言 在开发基于Java Swing的应用程序时,我们经常需要处理大量的数据展示问题。对于表格形式的数据展示,`JTable`是一个非常常用且强大的组件。然而,当数据量过大时...
Swing JTable组件设置单元格合并,内置Test测试类,核心API GridBagTable tasktable = new GridBagTable(model); tasktable.mergeCells(startRow, endRow, 0, 0);
JTable实现下拉动态加载数据,滑动动态加载数据,纯原生态java。
java swing 导出Jtable里面的数据到excel,不用拷贝代码,直接粘贴代码
swing Jtable使用checkboxswing Jtable使用checkboxswing Jtable使用checkboxswing Jtable使用checkboxswing Jtable使用checkboxswing Jtable使用checkboxswing Jtable使用checkboxswing Jtable使用checkboxswing ...
总结来说,JTable是Swing中用于构建表格界面的强大组件,它提供了丰富的功能和灵活性,可以方便地展示、编辑和管理数据。通过理解和熟练使用JTable,开发者能够创建出具有复杂数据展示和交互功能的桌面应用。
Swing JTable 常用属性详解 Swing JTable 是 Java 中一个常用的表格控件,用于显示和编辑表格数据。在实际开发中,经常需要对 JTable 进行各种设置和操作,这篇文章将详细介绍 JTable 的常用属性和方法。 一、创建...
用Java Swing Jtable做的日历
Java Swing高级空件JTable的用法 Java Swing中的JTable组件是用于显示和编辑数据的表格控件。它是Swing中最复杂和强大的组件之一,具有许多高级功能和灵活的配置选项。下面将详细介绍JTable的用法和相关知识点。 1...
在Java的Swing库中,`JTable`是用于创建数据网格视图的重要组件,它允许用户以表格的形式查看和操作数据。而`JButton`则是一个常用的按钮控件,通常用于触发某些动作或事件。将`JButton`添加到`JTable`中可以为用户...
Java Swing 实现 JTable 检测单元格数据变更事件的方法示例 Java Swing 中的 JTable 是一个功能强大且灵活的表格组件,广泛应用于各种桌面应用程序中。然而,在实际开发中,我们经常需要检测单元格数据的变更事件...
Swing之JTable用法
在Java的Swing库中,`JTable`和`JComboBox`是两个非常重要的组件,它们常被用于创建用户界面,展示数据并提供交互性。`JTable`用于展示二维表格数据,而`JComboBox`则是一种下拉选择框,可以提供多个选项供用户选择...
### Swing之JTable详解 #### 类层次结构图 在Swing框架中,`JTable`是构建GUI应用程序中表格的主要组件。它继承自`JComponent`类,这使得`JTable`能够支持丰富的图形用户界面功能。下面展示了`JTable`的类层次结构...
在Java Swing库中,`JTable`是一个非常重要的组件,用于展示二维数据表格。当我们需要在`JTable`中实现更复杂的交互,比如在一个单元格内放置多个按钮时,这通常涉及到自定义`TableCellRenderer`和`TableCellEditor`...
在Java的Swing库中,JTable是一个非常重要的组件,用于展示二维数据表格。它提供了丰富的功能,包括数据编辑、排序、筛选等。在实际应用中,我们有时需要在JTable的列中添加复选框(CheckBox)来实现多选功能。本篇...
java swing表格分页控件封装,有利于在开发中节约时间
封装JTable同时锁定多行多列效果,通过多层布局实现,不需要多个数据集,使用简单,不用对现有代码做改动。
当我们谈论“Swing JTable 合并”,通常是指在`JTable`中合并单元格,以实现更复杂的布局或者展示具有汇总信息的表格。 在`JTable`中,合并单元格涉及到两个主要方面:行合并和列合并。行合并通常用于显示具有多个...