好的,所以我得到了这个带有屏幕的 JFrame。我已将大小设置为 800 x 800。但是创建的窗口比这小。任务栏不是问题,因为它不是全尺寸的。
package sharph;
import java.awt.Dimension;
import javax.swing.JFrame;
public class Main extends JFrame {
public static String Title = "Game 1";
public static Dimension screenSize = new Dimension(800,800);
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setTitle(Title);
frame.setSize(screenSize);
frame.setLocationRelativeTo(null);
frame.setResizable(true);
frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
Screen screen = new Screen();
screen.setSize(screenSize);
frame.add(screen);
frame.setVisible(true);
}
}
在 screen 类中,paint 方法在边框应该在的位置周围绘制一个框:
//Draw border
g.setColor(Color.RED);
g.drawRect(1, 1, 799, 799);
当我运行它时,窗口比盒子小,底部和右侧被切断。
注意我手动调整大小以显示边框差异的第二张图片。
我意识到我已经在每边绘制了小 1 个像素的框,但差异远大于 2 个像素。