小白再求助....这个绘画问题出在哪.
package JianTin;import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import javax.swing.JFrame;
public class Test_paint extends JFrame{
public static void main(String[] args) {
Test_paint mp = new Test_paint();
}
public Test_paint(){
this.setLocation(200, 200);
this.setSize(500, 600);
this.setVisible(true);
}
public void paint(Graphics g){
this.setBackground(Color.BLUE);
Image background = Toolkit.getDefaultToolkit().getImage("background.jpg"); //加载背景图片
g.drawImage(background, 0, 0, 20, 30,this);
}
}
直接调用paint函数不能粘在画板上吗??? 本帖最后由 zlj19931010 于 2017-5-10 10:52 编辑
图片加载的方式错啦
Toolkit.getDefaultToolkit().getImage(url)
这个函数返回的iamge对象它只是记录图片的路径,具体数据要等到使用的时候去获取,即使是错误的路径也不会报错。
zlj19931010 发表于 2017-5-10 10:14
图片加载的方式错啦
Toolkit.getDefaultToolkit().getImage(url)
这个函数返回的iamge对象它只是记录图片 ...
file:///C:/Users/dell/Desktop/9R%5DI7T]94V0177%7DKZI%5BA%7BE0.png
还是不行啊,哎,还报一堆错 十六是只仙 发表于 2017-5-10 13:17
还是不行啊,哎,还报一堆错
你这一串是什么?
如果知道绝对路径就直接放进去就好了,getImage(绝对路径)
否则像我这样,通过class,或者classLoader,相对路径寻找
你图片放在哪里了? zlj19931010 发表于 2017-5-10 13:27
你这一串是什么?
如果知道绝对路径就直接放进去就好了,getImage(绝对路径)
package JianTin;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import javax.swing.JFrame;
public class Test_paint extends JFrame{
public static void main(String[] args) {
Test_paint mp = new Test_paint();
}
public Test_paint(){
this.setLocation(200, 200);
this.setSize(500, 600);
this.setVisible(true);
}
public void paint(Graphics g){
this.setBackground(Color.BLUE);
}
}
其实不是图片的问题,我想问的是直接用paint函数设置背景颜色。为什么不可以在画板上显示出来{:10_266:} 十六是只仙 发表于 2017-5-10 15:55
package JianTin;
import java.awt.Color;
请将继承 JFrame 换成继承 Frame 十六是只仙 发表于 2017-5-10 15:55
package JianTin;
import java.awt.Color;
public void paint(Graphics g){
this.setBackground(Color.BLUE);
Image background = Toolkit.getDefaultToolkit().getImage("background.jpg"); //加载背景图片
g.drawImage(background, 0, 0, 20, 30,this);
}
请将上述这条语句
Image background = Toolkit.getDefaultToolkit().getImage("background.jpg");
改为如下:
Image background = Toolkit.getDefaultToolkit().getImage(Test_paint.class.getResource("图片文件名"));
图片放在你 JianTin 包下 本帖最后由 zlj19931010 于 2017-5-10 16:56 编辑
十六是只仙 发表于 2017-5-10 15:55
package JianTin;
import java.awt.Color;
JFrame设置背景的话需要这样:this.getContentPane().setBackground(Color.blue);
或者
this.setBackground(Color.BLUE);
this.getContentPane().setVisible(false);
因为你看到的是那个contentPane,要么设置它的颜色,要么隐藏起来 零度非安全 发表于 2017-5-10 16:52
请将上述这条语句
改为如下:
感恩,谢谢!
页:
[1]