添加 JLabel,给 JLabel 添加 ImageIcon,然后放置 JLabel 到 JPanel 上就行了:
JPanel pnl = new JPanel()
......
JLabel lblImage = new JLabel(new ImageIcon("你的文件名")) //创建一个御差肢带图片的 JLabel
lblImage.setBounds(0, 0, pnl.getWidth(), pnl.getHeight()) //设置 图片的横坐标、纵坐标、宽、高
pnl.add(lblImage) //放置这个 JLabel 到你的 JPanel 上面
还有一种方法是重写 JPanel 的 paint() 方法:
class YourPanel extends JPanel {
private Image img = Toolkit.getDefaultToolkit().createImage("你的文件名") //用 Toolkit 的 createImage 方法来创建一个 Image 对象
@Override public void paint (Graphics g) {
super.paint(g)
g.drawImage(img, 0, 0, getWidth(), getHeight()) //绘制图片,第一个参数是 Image 对象,第二个参数是 横坐标,第三个是 纵坐标,第四个是 宽,第五个是 高
}
}
以上你隐式重写也可以:
JPanel pnl = new JPanel() {
@Override public void paint (Graphics g) {
...... /庆旅/但是要注意这样如果你把 Image 声明成了局部变量或者参数形式,你需要声明镇世成 final
}
}
完全脊察可以,程序如下,这里把图片和程序放在一块,不放在一起的话。
代码Icon icon=new ImageIcon("1.gif")//要给出图片的完整的路庆毕径。
图片资源:
import java.awt.*
import javax.swing.*
public class JFrameTest extends JFrame{
/**
* @param args
*/
private static final long serialVersionUID=1L
JFrameTest(String name){
super(name)
this.setSize(200, 200)//设置窗口大小。
this.setBackground(Color.DARK_GRAY)//设置背景颜色。
this.setLayout(new FlowLayout())//设置顺序布局。
Container con=this.getContentPane()//获取容器。
//设置按钮,为按钮添加图片。
Icon icon=new ImageIcon("1.gif")//根据路径取出图片。
JButton button=new JButton("带图片的按钮",icon)
con.add(button)//添加按钮樱差茄。
this.setDefaultCloseOperation(DISPOSE_ON_CLOSE)//设置默认的关闭方式。
}
public static void main(String[] args) {
JFrameTest test=new JFrameTest("按钮")
test.setVisible(true)
}
}
运行结果:
实现思路:无论是何种类型,都是转换为流的形式进行的文件传输和存储。可以通过BufferedReader 流的形式进行流缓存,之后通过readLine方法获取到缓存的内容。
BufferedReader bre = null
OutputStreamWriter pw = null//定义一个流
try {
String file = "D:/扮斗test/test.GIF"
bre = new BufferedReader(new FileReader(file))//此时获取到的bre就是厅郑磨整个文件的缓存流
pw = new OutputStreamWriter(new FileOutputStream(“D:/New.GIF”),"GBK")//确认流的输出文件和编码格式,此过程创建了“test.GIF”实例
while ((str = bre.readLine())!= null) // 判断最后一行不存在,为空结束循环
{
pw.write(str)//将要写入文件的内容,可以多次write
};
bre.close();
pw.close()//关闭流
备注:文件流用完之后必须及时通过close方法丛茄关闭,否则会一直处于打开状态,直至程序停止,增加系统负担。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)