私は2Dゲームをコーディングしています。誰かがウィンドウのサイズを変更すると、現在のウィンドウサイズと比較してすべて同じサイズになるようにサイズを変更します。例えば、私はデフォルトのTILEWIDTHを持っていますが、もし誰かがそれを大きくするためにウィンドウのサイズを変更した場合、それは「TILEWIDTH」を大きくするでしょうか?私のランチャークラス(Mainメソッドを持っている)の瞬間には、特定のピクセルの幅と高さを持つ新しいディスプレイを作成するだけです(ウィンドウのサイズを変更すると、ゲームディスプレイの周りに点滅する黒色/灰色の領域が作成されます)。Javaウィンドウ - リサイズ
これは私のDisplayクラス(私はmainメソッドでランチャークラスの新しいディスプレイを作成する)である:あなたが必要となる何
package me.chickenpillow.game.display;
import java.awt.Canvas;
import java.awt.Dimension;
import javax.swing.JFrame;
public class Display {
private JFrame frame;
private Canvas canvas;
private String title;
private int width, height;
public Display(String title, int width, int height) {
this.title = title;
this.width = width;
this.height = height;
createDisplay();
}
private void createDisplay() {
frame = new JFrame(title);
frame.setSize(width, height);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(true);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
canvas = new Canvas();
canvas.setPreferredSize(new Dimension(width, height));
canvas.setMaximumSize(new Dimension(width, height));
canvas.setMinimumSize(new Dimension(width, height));
canvas.setFocusable(false);
frame.add(canvas);
frame.pack();
}
public Canvas getCanvas() {
return canvas;
}
public JFrame getFrame() {
return frame;
}
}
@RosárioPereira Fernandesコードを使って投稿を編集しました –