【Java】监听jframe窗口大小改变函数:addComponentListener

简介: 【Java】监听jframe窗口大小改变函数:addComponentListener

问题描述:
  主要用于解决Jframe窗口大小变化时,里面的组件的位置也会自适应的移动。

相当于js里面的窗口大小改变监听函数:

window.onresize = function(){
  //js脚本接口
   }

在java里面应该用的接口是:

//让窗口响应大小改变事件
jframe.addComponentListener(new ComponentAdapter() {
            @Override
            public void componentResized(ComponentEvent e) {
            //这里写代码
            }
        });

【注意】

1,jframe是自定义的JFrame变量名称

2,此接口在main主函数中调用


举个例子,可复制粘贴直接运行:

import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
public class test {
  public static void main(String args[]){
    //创建面板
    JFrame jframe=new JFrame();
    jframe.setBounds(70,20,700,650);
    jframe.setVisible(true);
    //创建按钮
    JButton jb=new JButton("TEST");
    jframe.add(jb);
    jframe.addComponentListener(new ComponentAdapter() {//让窗口响应大小改变事件
            @Override
            public void componentResized(ComponentEvent e) {
              int fraWidth = jframe.getWidth();//获取面板宽度
            int fraHeight = jframe.getHeight();//获取面板高度
                System.out.println("窗口大小改变了~");
                System.out.println(fraHeight);
              jb.setBounds(fraWidth/2,fraHeight/2,100,30);
            }
        });
  }
}

每当窗口大小改变时,该接口计算面板的长宽,然后给组件jb的位置进行重新设计。

相关文章
|
2天前
|
Java 开发者 Spring
Java Springboot监听事件和处理事件
通过这些内容的详细介绍和实例解析,希望能帮助您深入理解Spring Boot中的事件机制,并在实际开发中灵活应用,提高系统的可维护性和扩展性。
20 7
|
3月前
|
Java
让星星⭐月亮告诉你,jdk1.8 Java函数式编程示例:Lambda函数/方法引用/4种内建函数式接口(功能性-/消费型/供给型/断言型)
本示例展示了Java中函数式接口的使用,包括自定义和内置的函数式接口。通过方法引用,实现对字符串操作如转换大写、数值转换等,并演示了Function、Consumer、Supplier及Predicate四种主要内置函数式接口的应用。
32 1
|
4月前
|
Java
java基础(11)函数重载以及函数递归求和
Java支持函数重载,即在同一个类中可以声明多个同名方法,只要它们的参数类型和个数不同。函数重载与修饰符、返回值无关,但与参数的类型、个数、顺序有关。此外,文中还展示了如何使用递归方法`sum`来计算两个数之间的和,递归的终止条件是当第一个参数大于第二个参数时。
36 1
java基础(11)函数重载以及函数递归求和
|
3月前
|
Java 编译器 C语言
【一步一步了解Java系列】:Java中的方法对标C语言中的函数
【一步一步了解Java系列】:Java中的方法对标C语言中的函数
33 3
|
3月前
|
分布式计算 Java Hadoop
Hadoop-30 ZooKeeper集群 JavaAPI 客户端 POM Java操作ZK 监听节点 监听数据变化 创建节点 删除节点
Hadoop-30 ZooKeeper集群 JavaAPI 客户端 POM Java操作ZK 监听节点 监听数据变化 创建节点 删除节点
81 1
|
3月前
|
Java C#
Java的监听处理事件--小球移动案例
Java的监听处理事件--小球移动案例
21 0
|
5月前
|
Java 调度 Android开发
Android经典实战之Kotlin的delay函数和Java中的Thread.sleep有什么不同?
本文介绍了 Kotlin 中的 `delay` 函数与 Java 中 `Thread.sleep` 方法的区别。两者均可暂停代码执行,但 `delay` 适用于协程,非阻塞且高效;`Thread.sleep` 则阻塞当前线程。理解这些差异有助于提高程序效率与可读性。
89 1
|
6月前
|
存储 Java 编译器
Java中ArrayList的常用函数
确切地说,`ArrayList` 提供的这些方法构成了一套强大并且灵活的工具集,可以满足各种程序设计情况中的需求。例如,通过使用 `iterator()`方法,开发者可以在不知道集合大小的情况下遍历集合中全部或部分元素;而 `sort()`方法则能够对集合中的元素进行排序。这些函数在日常的Java编程中极其常见且重要,掌握它们对于进行集合操作和数据处理来说是基础且必须的。
44 2
Java中ArrayList的常用函数
|
5月前
|
存储 运维 Java
函数计算产品使用问题之怎么配置定时触发器来调用Java函数
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
5月前
|
开发框架 Java Android开发
JNI中调用Java函数
JNI中调用Java函数
36 0