swing之JTable篇表列更改监听

2024-01-04 02:48

本文主要是介绍swing之JTable篇表列更改监听,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

TableColumnModelListener 定义侦听 TableColumnModel 中更改的对象的接口。

columnAdded(TableColumnModelEvent e)
          告知侦听器有一列被添加到模型中。
void columnMarginChanged(ChangeEvent e)
          告知侦听器因为页边空白更改,有一列被移除。
void columnMoved(TableColumnModelEvent e)
          告知侦听器有一列被重新调整位置。
void columnRemoved(TableColumnModelEvent e)
          告知侦听器有一列从模型中移除。
void columnSelectionChanged(ListSelectionEvent e)
          告知侦听器 TableColumnModel 的选择模型发生更改。

重写TableColumnModelListener实现对表列改变做控制
import java.awt.BorderLayout;   import javax.swing.JFrame;   
import javax.swing.JScrollPane;   
import javax.swing.JTable;   
import javax.swing.event.ChangeEvent;   
import javax.swing.event.ListSelectionEvent;   
import javax.swing.event.TableColumnModelEvent;   
import javax.swing.event.TableColumnModelListener;   
import javax.swing.table.TableColumn;   
import javax.swing.table.TableColumnModel;   public class ColumnModelSample {   public static void main(String args[]) {   final Object rows[][] = { { "one", "1" }, { "two", "2" }, { "three", "3" } };   final Object headers[] = { "English", "#" };   JFrame frame = new JFrame("Scrollless Table");   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);   JTable table = new JTable(rows, headers);   TableColumnModelListener tableColumnModelListener = new TableColumnModelListener() {   public void columnAdded(TableColumnModelEvent e) {   System.out.println("Added");   }   public void columnMarginChanged(ChangeEvent e) {   System.out.println("Margin");   }   public void columnMoved(TableColumnModelEvent e) {   System.out.println("Moved");   }   public void columnRemoved(TableColumnModelEvent e) {   System.out.println("Removed");   }   public void columnSelectionChanged(ListSelectionEvent e) {   System.out.println("Selection Changed");   }   };   TableColumnModel columnModel = table.getColumnModel();   columnModel.addColumnModelListener(tableColumnModelListener);   columnModel.setColumnMargin(12);   TableColumn column = new TableColumn(1);   columnModel.addColumn(column);   JScrollPane pane = new JScrollPane(table);   frame.add(pane, BorderLayout.CENTER);   frame.setSize(300, 150);   frame.setVisible(true);   }   
}  

这篇关于swing之JTable篇表列更改监听的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/567935

相关文章

更改docker默认数据目录的方法步骤

《更改docker默认数据目录的方法步骤》本文主要介绍了更改docker默认数据目录的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1.查看docker是否存在并停止该服务2.挂载镜像并安装rsync便于备份3.取消挂载备份和迁

SpringBoot整合Canal+RabbitMQ监听数据变更详解

《SpringBoot整合Canal+RabbitMQ监听数据变更详解》在现代分布式系统中,实时获取数据库的变更信息是一个常见的需求,本文将介绍SpringBoot如何通过整合Canal和Rabbit... 目录需求步骤环境搭建整合SpringBoot与Canal实现客户端Canal整合RabbitMQSp

vue如何监听对象或者数组某个属性的变化详解

《vue如何监听对象或者数组某个属性的变化详解》这篇文章主要给大家介绍了关于vue如何监听对象或者数组某个属性的变化,在Vue.js中可以通过watch监听属性变化并动态修改其他属性的值,watch通... 目录前言用watch监听深度监听使用计算属性watch和计算属性的区别在vue 3中使用watchE

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

linux定时监听ssh服务是否启动-------麒麟操作系统永久关闭swap

linux监听ssh服务是否启动 1、监听脚本2、定时任务3、麒麟操作系统,永久关闭swap 1、监听脚本 #在/usr/local/bin目录下新建脚本文件 cd /usr/local/bintouch check_sshd.sh#给可执行权限chmod +x /usr/local/bin/check_sshd.sh 脚本内容如下: #!/bin/bashs

兔子-更改 Apache 默认网站根目录

1.到Apache的安装目录下找到conf文件夹,该文件夹内会httpd.conf这样一个文本文档,它是Apache的配置文件。2.Ctrl+F组合键,找到 DocumentRoot D:/Apache/htdocs 将D:/Apache/htdocs改为你自定义的网站目录; 3.找到 <Directory D:/Apache/htdocs 将D:/Apache/htdocs改为你自定义的网

WebAPI(二)、DOM事件监听、事件对象event、事件流、事件委托、页面加载与滚动事件、页面尺寸事件

文章目录 一、 DOM事件1. 事件监听2. 事件类型(1)、鼠标事件(2)、焦点事件(3)、键盘事件(4)、文本事件 3. 事件对象(1)、获取事件对象(2)、事件对象常用属性 4. 环境对象 this5. 回调函数 二、 DOM事件进阶1. 事件流(1)、 捕获阶段(2)、 冒泡阶段(3)、 阻止冒泡(4) 、阻止元素默认行为(5) 、解绑事件 2. 事件委托3. 其他事件(1)、页面加

保姆级教学:OC监听网络状态变化 Reachability监听网络变化 ios网络变化

本文主要讲解了,在oc开发中,怎么去使用代码进行网络监听,十分的通俗易懂。 首先,在xcode工程中导入SystemConfiguration框架。 然后导入Reachability.h文件。 Reachability文件 点击下载,也可以按照如下内容创建对应的文件。 Reachability.m //文件名Reachability.m/*Copyright (C) 2016 App

【前端面试】事件监听机制React 的事件系统实现

目的 React 实现了自己的事件系统,主要是为了解决以下几个问题: 跨浏览器兼容性:不同的浏览器在处理 DOM 事件时有不同的实现,React 的事件系统抽象了这些差异,提供了一致的 API 给开发者使用。 性能优化:React 可以对事件进行池化(Pooling),这意味着事件对象可以在事件处理过程中被重用,减少了内存分配和垃圾回收的开销。 合成事件(Synthetic Events