Java drawImage的用法

import javax.swing.*;
//import java.util.*;
import java.awt.*;

public class Picture {
public static void main(String[] args)
{
frame f=new frame();
}
}

class frame extends JFrame
{
frame()
{
super("旅客旅行模拟系统");
setVisible(true);
setSize(800,600);
// setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
add(new ImagePanel());
repaint();
}

}
class ImagePanel extends Canvas
{
ImageIcon icon=new ImageIcon("D:/java eclipse/travel/src/3.png");
Image image=icon.getImage();
public void paint(Graphics g)
{
super.paint(g);
if(image==null) JOptionPane.showMessageDialog(null,"kengdie");
g.drawImage(image,300,60,500,500,this);
}
}

这个程序运行之后图像不能显示,然后当我在点击了最大化之后图片显示出来了。。。。我也不知道为什么。。求指教啊!!!

楼主这段代码,我run的时候可以正常显示图片啊。 g.drawImage(image,300,60,500,500,this); 楼主试一下 把显示的初始位置 【300,60】 改成 【0,0】。 还有不知道楼主要显示的图片是多大, 但是后面 这个长宽分别都是【500,500】,如果楼主的图片只有中间一小块有内容的话, 拉伸到500*500这么大可能中间要显示的内容已经跑到窗口外面去了。 楼主可以试试改成g.drawImage(image,0,0,100,100,this);追问

显示的图像是50*50,可能是我电脑的问题吧。。。我刚刚添加了几个Button刚开始的时候也不能显示,最小化之后再看就都出来了,我表示我很迷惘。。。。

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-06-12
setVisible(true);应放在方法体的最后本回答被提问者和网友采纳
第2个回答  2012-03-07
布局的问题 jframe的layout是最恶心人的。

java中的paint方法中的drawimage方法怎么用?
public abstract boolean drawImage(Image img,int x,int y,int width,int height,Color bgcolor,ImageObserver observer)绘制指定图像中已缩放到适合指定矩形内部的图像。图像绘制在此图形上下文坐标空间的指定矩形内部,如果需要,则进行缩放。以指定的背景色绘制透明像素。此操作等同于用给定颜色填充指定图像...

JAVA Graphics类中drawImage方法怎么用
1、先在eclipse中创建一个java工程文件,命名为UseFunction。2、然后在src下创建demo包,在demo下创建MyClass类。3、接着在MyClass类中创建一个函数。函数内容很简单,只是输出一条语句。4、接着就是要在main函数中调用上一步创建的函数。5、编辑好MyClass.java文件后,通过java应用程序的方式运行MyCla...

Java drawImage的用法
g.drawImage(image,300,60,500,500,this); 楼主试一下 把显示的初始位置 【300,60】 改成 【0,0】。 还有不知道楼主要显示的图片是多大, 但是后面 这个长宽分别都是【500,500】,如果楼主的图片只有中间一小块有内容的话, 拉伸到500*500这么大可能中间要显示的内容已经跑到窗口外面去了。 ...

java drawImage 如何实现旋转和缩放
Image img = new BufferedImage();g2.drawImage(img, at, null);}

gr.drawImage(img, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2, observ...
正就往右偏,负就往左偏。右下角坐标,可以比图a的尺寸(266*266)大,也可以比其小。绘不完的就是黑色。一般来说,这个方法一般我不用。我只用四个参数的那个。gc1.drawImage(src, 0, 0, w\/3, w\/3, null);相当于 gc1.drawImage(src, 0, 0, w\/3, w\/3, 0,0,w,h,null);...

关于java Graphics类的drawImages方法!!急!!!
Draw类:类内有方法drawbg(Graphics g);画背景的方法,要传入Graphics对像、drawimage(Graphics g);画图片的方法,要传入Graphics对像。Panel类:用于画图的容器,在Panel类的paint方法中加入所要画的方法,可以通过布尔型的参数if(boolean b){draw(this.getGraphics());}来控制画图。这样的代码结构...

J2ME drawImage怎么设置透明色
首先要用所在显示设备对象 display.numAlphaLevels()方法测的屏幕支持多少级的不透明色。至少最小值为2,表示支持。然后可以自己用photoshop等工具在png图片中处理好不透明色,可以直接显示不透明。也可以在Java ME中,把Image的像素中所有的白色0xFFFFFF数值,转换\/处理成透明色0xFF000000;...

JAVA中如何在指定坐标显示图片
用绘图的方式把图片画上就可以了 public void paint(Graphics g){ ImageIcon img = new ImageIcon("pic.png");g.drawImage(img,x,y,this);}

Java绘图机制是什么样的
3、使用JColorChooser组件选择颜色 JAVA中有一个已经定义好的选色器,通过简单的语法我们就可以将该窗口调出来,从其中选择自己喜欢的颜色。下面的这个例子就是通过颜色选取器选取颜色,并将选择到的颜色做为窗体的背景色。(1)JColorChooser简介 JColorChooser组件的showDialog()方法让用户从弹出的窗口中选择一...

Java程序中图片的使用方法
filename)或new ImageIcon(URL location)都可以直接加载图像文件。甚至你还可以先用IO读出byte流,也能用byte[]创建ImageIcon。还可以由已有的Image来创建。更为高级的用法是,你还可以先创建个空的ImageIcon,然后重写paintIcon(Component,Graphics,int,int)方法实现手工绘制!如果你是要完成图像绘制,那么...

相似回答