gpt4 book ai didi

java - JFrame 大小不正确

转载 作者:行者123 更新时间:2023-12-02 05:08:05 26 4
gpt4 key购买 nike

我正在用 Java 创建一个乒乓球游戏。我最初有一个未装饰 JFrame,其宽度700高度400>。后来我改变了主意,改用了装饰框架。错误在于球离开屏幕,距离装饰框架中的顶部 30 像素左右。我测量了屏幕,装饰后确实是700 x 400;但是,我需要将绘制球的区域设置为 700 x 400,而不是整个 JFrame。我能做什么?

如何设置框架的大小:

this.setSize(new Dimension(WIDTH, HEIGHT));

我很高兴根据要求发布解决此问题所需的所有代码。

编辑

import java.awt.Dimension;
import javax.swing.JComponent;
import javax.swing.JFrame;

public class Tester extends JFrame {

public Tester() {
this.add(new Window());
pack();

addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
formMouseClicked(evt);
}
});
}

private void formMouseClicked(java.awt.event.MouseEvent evt) {
System.out.println("X: " + evt.getX() + ", Y: " + evt.getY());
}

public static void main(String[] args) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Tester().setVisible(true);
}
});
}

public class Window extends JComponent {

@Override
public Dimension getPreferredSize() {
return new Dimension(300, 300);
}
}
}

最佳答案

What can I do?

在添加到框架的面板中进行自定义绘画。这样坐标就会如您所期望的那样。使用此方法的另一个好主意是覆盖 getPreferredSize() 以返回可视播放区域的大小,然后覆盖 pack() 框架以获得适合游戏的完美大小。内容。

关于java - JFrame 大小不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27590185/

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