当前位置: 代码迷 >> Java相关 >> 设置JFrame大小
  详细解决方案

设置JFrame大小

热度:388   发布时间:2007-05-12 12:51:52.0
设置JFrame大小
我在JPanel组件上放置了一张图片
将JPanel组件放置到JFrame中,我想设置JFrame大小适合图片的大小,怎么获取图片的大小阿????
搜索更多相关的解决方案: JFrame大小  JPanel  组件  获取  

----------------解决方案--------------------------------------------------------

先得到图片的大小,然后再设置JFrame的大小


----------------解决方案--------------------------------------------------------
int x=image.getwidth();
int y=image.gethight();
jframe.setsize(x,y);
----------------解决方案--------------------------------------------------------

我的图片是放在JPanel里的啊
然后JPanel放在JFrame里的
就是想问在JFrame里怎么活的图片的大小????


----------------解决方案--------------------------------------------------------
你在生成JFrame的时候,应该就去获取图片的大小啊,getWidth(),getHeight(),看看AIP吧,很详细的

----------------解决方案--------------------------------------------------------

如果图片是放上去的 就直接看图片来源的属性大小就是你想要的大小
要是画上去的就不必获得了 自己改变大小:)


----------------解决方案--------------------------------------------------------

我的图片是放在JPanel里的阿,在JPanel里获取图片大小是用getwidth(),getheight().
在JFrame里怎么获得阿????


----------------解决方案--------------------------------------------------------
不管你把图片放在哪种容器中,都能能过getwidth(),getheight()取到大小的.

就用你创建的图片时的对象的名字加上getwidth(),getheight()试试.
----------------解决方案--------------------------------------------------------

[CODE]
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import javax.imageio.*;

public class ImageTest
{
public static void main(String[] args)
{
ImageFrame frame=new ImageFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}

class ImageFrame extends JFrame
{

public ImageFrame()
{
setTitle("Picture");
setSize( ); 这里怎么获取图片大小????
ImagePanel panel=new ImagePanel();
add(panel);
}
}

class ImagePanel extends JPanel
{
private Image image;

public ImagePanel()
{
try
{
image=ImageIO.read(new File("bubbles.jpg"));
}
catch(Exception e)
{
e.printStackTrace();
}
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
if(image==null)return;

g.drawImage(image, 0, 0,null);
}

}[/CODE]


----------------解决方案--------------------------------------------------------
回复:(huwangvs)设置JFrame大小
一般情况下JFrame中是不直接加图片的,一般用JLabel做载体,其他组件如Button等,都可以加在JLabel上,如果直接加在JFrame上,刷新窗口是很不方便的,如调用updateUI()
----------------解决方案--------------------------------------------------------