java设置frame背景总结设置背景图片

2023-02-05 13:32:12   第一文档网     [ 字体: ] [ 阅读: ] [ 文档下载 ]

#第一文档网# 导语】以下是®第一文档网的小编为您整理的《java设置frame背景总结设置背景图片》,欢迎阅读!
设置,背景图片,背景,总结,frame
Java中有关Frame背景的设置总结

我们在进行图形用户界面编程时,为了做出一个漂亮、个性化的界面,那么界面的背景就必须考虑了。要想灵活使用背景就一定要对frame的基本有一些了解,因为在java编程中没有直接设置背景的有关方法,了解一些基本知识后我们就可以随意设置背景了。

首先还是要了解框架JFrame中的层次结构。JFrame中的层次分布及相对关系是:最底层是:JRootPane;第二层是:JlayerPane;最上层就是ContentPane,也正是我们常说的内容面板。所以一般我们拖放的控件就是在ContentPane层上。

有了这些常识后我们就可以随意设计背景了。在这里笔者提供两种方法为一个frame置一张背景图片 方法一:

原理:我们把图片放置在第二层:JlayerPane容器上,然后让最上层的:ContentPane透明,这样就实现了背景的设置。(当然把图片放置最低层,让上面两层透明也是可以的) 具体步骤:

// 加载背景图片

ImageIcon bg = new ImageIcon("background.jpg"); // 背景图片显示在一个标签里 JLabel label = new JLabel(bg); //把标签的大小位置设置为图片刚好填充整个面

label.setBounds(0,0,bg.getIconWidth(),bg.getIconHeight()); //添加图片frame的第二层

frame.getLayeredPane().add(label,newInteger(Integer.MIN_VALUE)); //获取frame的最上层面板为了设置其背景颜色(JPanel有设置透明的方法) JPanel jp=(JPanel)frame.getContentPane(); jp.setOpaque(false);//设置透明





//测试用的JPanel

JPanel panel=new JPanel();

panel.setOpaque(false);//也要让他透明 panel.setLayout(null);//为了使用按钮的定位 JButton button=new JButton("OK"); button.setSize(100, 20); button.setLocation(100, 50); panel.add(button); frame.add(panel);

效果如图:



方法二:

原理我们直接在最上层容器内重写paintComponent(Graphics g)方法在容器中画一张图


片。(这种方法很直观,原理很简单) 具体步骤:

只需要在构造JPanel时重写paintComponent(Graphics g)ok了。

class PanelTest extends JPanel{

ImageIcon background = new ImageIcon("background.jpg");//加载图片 Image im=Toolkit.getDefaultToolkit().getImage("background.jpg"); int h,w;

public void paintComponent(Graphics g) { } }

g.drawImage(im, 0, 0, null);

总结只要了解了基本原理我们就可以更随意一点设计我们的风格了,我在这了抛砖引玉,希望对初学者有所帮助。


本文来源:https://www.dy1993.cn/L0RK.html

相关推荐