好的,我有一个带屏幕的JFrame。我将其大小设置为800x800。然而窗口创建的尺寸比这小。这不是任务栏的问题,因为它不是全屏。
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);
}
}
在屏幕类中,绘画方法会在应该有边框的地方绘制一个框:
//Draw border
g.setColor(Color.RED);
g.drawRect(1, 1, 799, 799);
当我运行它时,窗口比框小,底部和右侧被切掉了。 请注意第二张图片我手动调整大小以显示边框差异。 我意识到我在每个侧面都画了1像素的框,但是差异远远超过2像素。
frame.pack()
。 - MrSmith42