gpt4 book ai didi

java - 如何获取面板的大小

转载 作者:行者123 更新时间:2023-11-29 04:23:19 25 4
gpt4 key购买 nike

我试图在 Panel 类中获取面板的高度和宽度,但我不确定如何获取。

我的主课:

public class Pong extends JFrame 
{
public static void main(String[] args)
{
JFrame frame = new JFrame();
frame.setSize(1000, 800);
frame.setLocation(500, 150);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setTitle("Pong");
frame.setVisible(true);
frame.setResizable(false);
frame.setContentPane(new Paneel());
frame.getContentPane().setBackground(Color.black);
}
}

我的面板类:

public class Paneel extends JPanel 
{
public Paneel() {

}
}

我希望有人能帮助我。

提前致谢!

最佳答案

一个选项是使用 getSize() ,另一个与您的示例更相关的是 getWidth()getHeight()

要在面板类中获取宽度和高度:

public class Paneel extends JPanel 
{
public Paneel() {
int width = getWidth();
int height = getHeight();
}
}

我希望这就是您要找的:)

编辑:

The odd thing is, the height and with are both 0 even if i add a button to it

它可能是 0,因为您在实际将它“添加”到框架之前检查了它的大小,这意味着它还没有明确的大小,运行以下代码,您会看到它不是 0:

Pong.java:

public class Pong extends JFrame 
{
public static void main(String[] args)
{
JFrame frame = new JFrame();
Paneel panel = new Paneel();

frame.setSize(1000, 800);
frame.setLocation(500, 150);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setTitle("Pong");
frame.setVisible(true);
frame.setResizable(false);
frame.setContentPane(panel);
frame.getContentPane().setBackground(Color.black);

panel.printSizes();
}
}

请注意,我们要求面板在将其添加到框架后打印其尺寸

面板.java:

public class Paneel extends JPanel 
{
public Paneel() {

}

public void printSizes() {
int width = getWidth();
int height = getHeight();

System.out.println(width);
System.out.println(height);
}
}

关于java - 如何获取面板的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47796695/

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