-
swing jtable 行选择时加色同时鼠标滑过行时行也加色如果实现?0
swing jtable 行选择是加色并且鼠标滑过行时也加色如果实现?
Jtable默认已经实现了行选择加色,但我现实了鼠标滑过是时行也加色后,选择行加色就失效了,两者只能实现其一,如何才能实现选择行时加色,同时鼠标滑过行时行也加色呢,谢谢!2012年7月05日 22:50
1个答案 按时间排序 按投票排序
-
给你敲了一段,感动吧
import java.awt.Color; import java.awt.Component; import java.awt.Point; import java.awt.event.MouseEvent; import java.awt.event.MouseMotionListener; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JTable; import javax.swing.table.AbstractTableModel; import javax.swing.table.DefaultTableCellRenderer; /** * TableDemo is just like SimpleTableDemo, except that it uses a custom * TableModel. */ class MyTable extends JTable implements MouseMotionListener{ private int mouseOnRowIndex = -1; public MyTable() { this.setModel(new MyTableModel()); this.addMouseMotionListener(this); this.setDefaultRenderer(Object.class, new MyTableCellRenderer()); } public void setMouseOnRowIndex(int mouseOnRowIndex) { this.mouseOnRowIndex = mouseOnRowIndex; } class MyTableCellRenderer extends DefaultTableCellRenderer{ @Override public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { if(row == MyTable.this.mouseOnRowIndex){ setBackground(Color.YELLOW); }else{ setBackground(null); } return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); } } class MyTableModel extends AbstractTableModel { @Override public int getRowCount() { return 3; } @Override public int getColumnCount() { return 3; } @Override public Object getValueAt(int rowIndex, int columnIndex) { return rowIndex + " - " + columnIndex; } } @Override public void mouseDragged(MouseEvent e) {} @Override public void mouseMoved(MouseEvent e) { MyTable table = (MyTable) e.getComponent(); Point point = e.getPoint(); int rowAtPoint = table.rowAtPoint(point); System.out.println(rowAtPoint); table.setMouseOnRowIndex(rowAtPoint); table.updateUI(); } public static void main(String[] args) { JFrame frame = new JFrame(); frame.add(new MyTable()); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.pack(); frame.setVisible(true); } }
2012年7月06日 05:12
相关推荐
在Java Swing应用中,`JTable`是一种常用的组件,用于展示和操作二维数据。它提供了丰富的功能,如排序、选择和编辑。然而,`JTable`默认并不支持行间的拖放(Drag and Drop, DnD)操作。本文将详细介绍如何通过一种...
### Java Swing JTable 分页实现详解 #### 一、引言 在开发基于Java Swing的应用程序时,我们经常需要处理大量的数据展示问题。对于表格形式的数据展示,`JTable`是一个非常常用且强大的组件。然而,当数据量过大时...
JTable 拖动行 移动行的ui,直接 table.setUI(new DragDropRowTableUI()); 调用
Swing JTable组件设置单元格合并,内置Test测试类,核心API GridBagTable tasktable = new GridBagTable(model); tasktable.mergeCells(startRow, endRow, 0, 0);
JTable实现下拉动态加载数据,滑动动态加载数据,纯原生态java。
Java Swing 实现 JTable 检测单元格数据变更事件的方法示例 Java Swing 中的 JTable 是一个功能强大且灵活的表格组件,广泛应用于各种桌面应用程序中。然而,在实际开发中,我们经常需要检测单元格数据的变更事件...
JTable能够方便地创建和管理表格数据,同时也支持用户交互,如编辑单元格、排序、选择行等操作。下面我们将深入探讨JTable的使用方法和特性。 首先,JTable的类继承结构如下: 1. `java.lang.Object` 2. `java.awt...
swing Jtable使用checkboxswing Jtable使用checkboxswing Jtable使用checkboxswing Jtable使用checkboxswing Jtable使用checkboxswing Jtable使用checkboxswing Jtable使用checkboxswing Jtable使用checkboxswing ...
当我们需要在JTable中实现用户交互,比如选中某一行并进行编辑时,通常会涉及到几个关键概念和技术。以下是对这些知识点的详细解释: 1. **JTable的创建与基本用法**:JTable是javax.swing.JTable类的实例,它基于...
### Swing之JTable详解 #### 类层次结构图 在Swing框架中,`JTable`是构建GUI应用程序中表格的主要组件。它继承自`JComponent`类,这使得`JTable`能够支持丰富的图形用户界面功能。下面展示了`JTable`的类层次结构...
Java Swing高级空件JTable的用法 Java Swing中的JTable组件是用于显示和编辑数据的表格控件。它是Swing中最复杂和强大的组件之一,具有许多高级功能和灵活的配置选项。下面将详细介绍JTable的用法和相关知识点。 1...
Swing JTable 常用属性详解 Swing JTable 是 Java 中一个常用的表格控件,用于显示和编辑表格数据。在实际开发中,经常需要对 JTable 进行各种设置和操作,这篇文章将详细介绍 JTable 的常用属性和方法。 一、创建...
java swing 导出Jtable里面的数据到excel,不用拷贝代码,直接粘贴代码
Swing之JTable用法
在Java的Swing库中,`JTable`和`JComboBox`是两个非常重要的组件,它们常被用于创建用户界面,展示数据并提供交互性。`JTable`用于展示二维表格数据,而`JComboBox`则是一种下拉选择框,可以提供多个选项供用户选择...
在Java的Swing库中,`JTable`是用于创建数据网格视图的重要组件,它允许用户以表格的形式查看和操作数据。而`JButton`则是一个常用的按钮控件,通常用于触发某些动作或事件。将`JButton`添加到`JTable`中可以为用户...
在Java Swing库中,`JTable`是一个非常重要的组件,用于展示二维数据集,通常用于创建用户界面中的表格。在一些复杂的应用场景中,我们可能需要实现更高级的功能,如复杂的表头和跨行列表体。这个主题主要关注如何...
JTable可以与TableModel配合,使数据动态更新,同时支持排序、选择和编辑等功能。在“仿分页”实现中,JTable可能被用来显示数据集的一个“页面”,当用户滚动滚动条时,JTable会显示数据集的下一“页面”。 ...
在这个`JTable`示例源码中,我们将会深入探讨如何使用`TableModel`,以及在处理`JTable`事件时如何获取当前选中的行和其他相关数据。 首先,`TableModel`是`JTable`的核心,它定义了表格数据的结构和行为。自定义`...