当前位置: 代码迷 >> Java相关 >> JPanal上加图片的问题!
  详细解决方案

JPanal上加图片的问题!

热度:138   发布时间:2006-11-01 21:55:20.0
JPanal上加图片的问题!

import java.awt.BorderLayout;
import java.awt.Dimension;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.*;
import java.awt.*;

public class Frame1 extends JFrame {
JPanel contentPane;
JLabel jLabel1 = new JLabel();
BorderLayout borderLayout1 = new BorderLayout();
BG background = new BG();
public Frame1() {
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}

/**
* Component initialization.
*
* @throws java.lang.Exception
*/
private void jbInit() throws Exception {
contentPane = (JPanel) getContentPane();
contentPane.setLayout(borderLayout1);
setSize(new Dimension(400, 300));
setTitle("Frame Title");
jLabel1.setText("jLabel1");
contentPane.add(background, java.awt.BorderLayout.SOUTH);
}
class BG extends JPanel {

public void paintComponent(Graphics g) {
super.paintComponent(g);
Image img=Toolkit.getDefaultToolkit().getImage("F:\\1.jpg");
g.drawImage(img,0,0,this.getSize().width,this.getSize().height,this);//是怎么产生的??????
}
}//我是想在jPanal上加图片!
}

搜索更多相关的解决方案: import  JPanal  awt  java  BorderLayout  

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

你想问什么?
并且你这种编程方式也不好,因为每次重画的时候你都要去读取图片
并且图片名最好也不是取绝对名称,这样不好移植


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

呵呵,谢谢!我想知道最下面加红的一段是怎么产生的!作用是什么?
public void paintComponent(Graphics g) {
super.paintComponent(g);
Image img=Toolkit.getDefaultToolkit().getImage("F:\\1.jpg");
g.drawImage(img,0,0,this.getSize().width,this.getSize().height,this);
}


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

public void paintComponent(Graphics g) {
super.paintComponent(g);//调用父类的方法,清除以前画的
Image img=Toolkit.getDefaultToolkit().getImage("F:\\1.jpg");//得到图像的引用
g.drawImage(img,0,0,this.getSize().width,this.getSize().height,this);//把它画出来
}
这个方法是重写了父类JPanel的方法
它的作用是画组件
用此方法可以实现背景图片


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

十分感谢峰哥!


----------------解决方案--------------------------------------------------------
我是菜鸟
看了你们的代码真是受益不浅
----------------解决方案--------------------------------------------------------
但是如何在文件选择框里选好图片后,在JPANEL上显示出来
----------------解决方案--------------------------------------------------------
你们的这个论坛是用ASP.NET做的吗?
----------------解决方案--------------------------------------------------------
  相关解决方案