java实现带有背景图片的窗体

2025-05-29 0 22

本文实例为大家分享了java实现带有背景图片窗体,供大家参考,具体内容如下

背景图片添加到面板再添加到窗体

背景图片添加到面板上

可设置背景图片的画板

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16
//创建一个类继承画板类

public class MyJPanel extends JPanel{

//构造方法初始化背景图片

private Image image;

public MyJPanel(Image image){

this.image = image;

}

//重写paintComponent方法

@Override

public void paintComponent(Graphics g) {

//调用父类paintComponent方法绘制其他组件

super.paintComponent(g);

//绘制背景图片,大小为窗体大小

g.drawImage(image, 0, 0,getWidth(),getHeight(), null);

}

}

测试

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27
import javax.swing.*;

import java.awt.*;

//测试类

public class Demo1 {

//创建窗体

private JFrame myJFrame = new JFrame("有背景图片");

public Demo1(){

//获取图片

Image im = new ImageIcon("forGame\\\\src\\\\resource\\\\主题背景.jpg").getImage();

//设置窗体大小

myJFrame.setSize(889,500);

//获取设置背景后的面板

MyJPanel myJPanel = new MyJPanel(im);

//添加按钮测试

myJPanel.add(new JButton("hello"));

myJPanel.add(new JButton("hello1"));

myJFrame.add(myJPanel);

myJFrame.setLocationRelativeTo(null);

myJFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

myJFrame.setVisible(true);

}

public static void main(String[] args) {

new Demo1();

}

}

效果图

java实现带有背景图片的窗体

背景图片添加到窗体

分层添加

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39
import javax.swing.*;

public class MyJFrame extends JFrame {

public MyJFrame () {

//创建一个JLayeredPane用于分层的。

JLayeredPane layeredPane=new JLayeredPane();

//获取图片

ImageIcon image=new ImageIcon("forGame\\\\src\\\\resource\\\\主题背景.jpg");

//JLabel用于存放背景图片,作为背景添加到JPanel上

JLabel jl=new JLabel(image);

//创建JPanel,并将JLabel添加

JPanel jp=new JPanel();

//设置JPanel大小为背景图片大小

jp.setBounds(0,0,image.getIconWidth(),image.getIconHeight());

jp.add(jl);

//创建测试按钮

JButton jb1=new JButton("hello");

jb1.setBounds(100,100,100,100);

JButton jb2=new JButton("hello1");

jb2.setBounds(500,100,100,100);

//将jp放到JLayeredPane的最底层

layeredPane.add(jp,JLayeredPane.DEFAULT_LAYER);

//将jb放到jp高一层的地方

layeredPane.add(jb1,JLayeredPane.MODAL_LAYER);

layeredPane.add(jb2,JLayeredPane.MODAL_LAYER);

//设置窗体

this.setLayeredPane(layeredPane);

this.setSize(image.getIconWidth(),image.getIconHeight());

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

public static void main(String[] args) {

new MyJFrame ();

}

}

效果图

java实现带有背景图片的窗体

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持快网idc。

原文链接:https://blog.csdn.net/weixin_46085748/article/details/113091839

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 java实现带有背景图片的窗体 https://www.kuaiidc.com/108161.html

相关文章

发表评论
暂无评论