import java.awt.*;
import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;import javax.swing.*;
public class photo extends JFrame{
JFrame frame;
Container container;
JPanel panel1;
JPanel panel2;
JButton button;
File file = null;
URL url = null;
ImageIcon imageicon;
Image image = null; //声明照片变量
//Graphics g = panel1.getGraphics();
public photo(){
frame = new JFrame();
container = frame.getContentPane();
frame.show(); //可使 他内部的组件全不可见
//container.getGraphics();
if(container.getGraphics() instanceof Graphics){ //必须先让要得到图形上下文,即得到Graphis的对象可见
System.out.println("没得到了画笔:");
}
panel1 = new JPanel();
panel2 = new JPanel();
button = new JButton("按钮");
file = new File("E:\\Media\\照片\\a.jpg");
try {
url = file.toURL();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
imageicon = new ImageIcon(url);
panel1.add(button);
panel2.setBackground(Color.red);
//p(container.getGraphics());
imageicon.paintIcon(container, container.getGraphics(), 0, 0);
frame.show();
//repaint(); //container.getGraphics()得不到画笔啊
}
public void p(Graphics g){
imageicon.paintIcon(container, g, 0, 0);
}
/*public void paint(Graphics g){
imageicon.paintIcon(container, g, 0, 0);
}*/
public static void main(String[] args){
// TODO Auto-generated method stub
photo fr = new photo();
}}
解决方案 »
- 【新手学java】jdk1.6+myeclipse6.5+sqlserver2000数据库连接问题
- 一段5行小代码,帮我注释一下。
- 如何把IE浏览器快速变成灰色来哀悼在汶川地震中遇难的同胞们!
- 请各位Java高手帮忙:
- 如何实现窗口间的数据传递???
- :(今天可惨了,没去上班,大家帮我出个注意啥
- 路径问题,求教
- 使用session问题
- 做了一个窗口,如何让它在启动的时候,显示在屏幕正中。(不管屏幕的大小和分辨率)
- 怎样从javascript中获得一个applet里发生的事件,比如鼠标的点击等等
- 关于java中的父类的问题
- 如何给jframe中的components也加上和jframe一样的事件监听
import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;
import javax.swing.*;
public class photo extends JFrame{ JFrame frame;
Container container;
JPanel panel1;
JPanel panel2;
JButton button;
File file = null;
URL url = null;
ImageIcon imageicon;
Image image = null; //声明照片变量
//Graphics g = panel1.getGraphics();
public photo(){
frame = new JFrame();
container = frame.getContentPane();
frame.show(); //可使 他内部的组件全不可见
//container.getGraphics();
if(container.getGraphics() instanceof Graphics){ //必须先让要得到图形上下文,即得到Graphis的对象可见
System.out.println("没得到了画笔:");
}
panel1 = new JPanel();
panel2 = new JPanel();
button = new JButton("按钮");
file = new File("E:\\Media\\照片\\a.jpg");
try {
url = file.toURL();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
imageicon = new ImageIcon(url);
panel1.add(button);
panel2.setBackground(Color.red);
//p(container.getGraphics());
imageicon.paintIcon(container, container.getGraphics(), 0, 0);
frame.show();
//repaint(); //container.getGraphics()得不到画笔啊
}
public void p(Graphics g){
imageicon.paintIcon(container, g, 0, 0);
}
/*public void paint(Graphics g){
imageicon.paintIcon(container, g, 0, 0);
}*/
public static void main(String[] args){
// TODO Auto-generated method stub
photo fr = new photo();
}
}