gpt4 book ai didi

java - 检测 JFrame 大小调整

转载 作者:行者123 更新时间:2023-12-02 04:14:34 25 4
gpt4 key购买 nike

我使用 JFrame,只要用户将其大小从原始大小 (400x300) 调整到 width 达到某个值,我就可以做一些事情,我们在这里称之为打印命令。我使用:

import javax.swing.JFrame;

public class DC extends JFrame {
public DC() {
setSize(400, 300);
setVisible(true);
if (getWidth() >= 1000) System.out.print("Thousand");
}

public static void main(String[] args) {
DC dc = new DC();
dc.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}

这有效,但仅当我从头开始 setSize(1000, 300) 时,而不是当用户调整框架大小时。我知道要挥杆等等,我认为这不是解决这个问题的方法。我应该去哪里解决这个问题?泰

最佳答案

您新修改的代码(当窗口宽度大于等于1000时将打印千)----

import java.awt.Component; //import these 3 header files
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;

import javax.swing.JFrame;

public class DC extends JFrame {
public DC() {
setSize(400, 300);
setVisible(true);
// if (getWidth() >= 1000) System.out.print("Thousand");
addComponentListener(new ComponentAdapter()
{
public void componentResized(ComponentEvent evt) {
Component c = (Component)evt.getSource();
if(c.getWidth()>=1000) //This will print Thousand
{
System.out.println("Thousand");
}
}
});
}


public static void main(String[] args) {
DC dc = new DC();
dc.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}

关于java - 检测 JFrame 大小调整,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33459672/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com