java - JPanel 将自身绘制在 JFrame 标题栏下方

标签 java swing user-interface

我有一个 500 x 500 像素的图像,我试图将其绘制到位于 JFrame 内的 JPanel 上。这是我到目前为止的代码:

public class Game extends JFrame {
    // Other code...

   setTitle("Game");

   JPanel panel = new JPanel();
   panel.setPreferredSize(new Dimension(500, 500));

   add(panel);
   setSize(500, 500);

   setIgnoreRepaint(true);

   // Handle a close event gracefully.
   addWindowListener(new WindowAdapter() {
       public void windowClosing(WindowEvent e) {
           System.exit(0);
       }
   });

   addKeyListener(new MainMenuState(this));

   setResizable(false);
   pack();
   setVisible(true);

我可以正常绘制 JPanel,但 JPanel 的左上角似乎绘制在 JFrame 上的 0,0 处,位于标题栏下方。我尝试在 JFrame 上设置布局管理器,但这似乎不起作用。我可以手动偏移 JPanel,但我认为我不必这样做(我认为 pack() 应该解决这个问题)。

最佳答案

关于java - JPanel 将自身绘制在 JFrame 标题栏下方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9344828/

相关文章:

c++ - 用于开发 GUI 库的文章

java - 如何使用 'ADD'按钮重复添加JPanel?如何在ActionListener()中调用JPanel?

java - 如果鼠标正在移动,则重新启动计时器

java - 更新多个文本框 Java GUI

.net - WPF - 具有固定标题/行的 ScrollViewer

java - 将行添加到 DefaultTableModel

java - RequestMapping 接受 Rest API 中的所有 url

java - 我应该把配置文件放在网络服务的什么地方

java - Java 调试时的变量值(哈希)

java - Spring Boot 应用程序的测试如何进行