我有一个JFrame,我坚持一个JPanel来显示图像,在这种情况下,1024x1025。我似乎无法找到答案的问题是如何确保我的包含JFrame将显示整个图像/ JPanel。我有东西接近这个例子:获取JFrame包含JPanel
ImagePanel view = new ImagePanel(); //extends JPanel
JFrame Container = new JFrame();
view.setSize(1024, 1025);
container = new JFrame(winTitle);
container.setLayout(new BorderLayout());
container.setSize(view.getSize());
container.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
container.add(view);
container.setVisible(true);
这个明显的问题是,在JFrame的是由底层操作系统的装饰,所以我不知道有多少像素,使其比JPanel的从尺寸较大系统到系统。就像现在一样,由于JFrame的设置与JPanel的大小相同,因此图像在右侧和底部被各少数像素切断。有没有办法告诉JFrame读取它所包含的Jpanel的大小,并使其足够大以显示整个JPanel?谢谢!
编辑
上的图像面板设置首选大小,然后设置容器的大小(不推荐),然后包装附加给了我,我是想的行为之后。任何人都可以解释这里发生了什么,我仍然对某些摆动部件的操作顺序有些模糊。
*“JPanel进入显示图像”*您是否在图像顶部添加了其他任何东西?如果没有,把它放入一个'JLabel'的'ImageIcon'中。 –