Java 窗体背景图+设置按钮样式

这个方法应该是比较麻烦的做法,因为背景图是放在窗体的第二层,如果窗体内容层有很多面板,就得挨个设置透明。话不多说,上代码:

 1 import java.awt.Color;
 2 import java.awt.Dimension;
 3 import java.awt.FlowLayout;
 4 import java.awt.event.WindowAdapter;
 5 import java.awt.event.WindowEvent;
 6 
 7 import javax.swing.ImageIcon;
 8 import javax.swing.JButton;
 9 import javax.swing.JFrame;
10 import javax.swing.JLabel;
11 import javax.swing.JPanel;
12 
13 public class Background extends JFrame {
14     
15     
16     public static void main(String[] args) {
17         new Background();
18     }
19     
20     Background() {    
21         this.setTitle("Background");
22         this.setLayout(new FlowLayout());
23         JButton jb = new JButton("测试");
24         this.add(jb);
25         
26         //放置背景图
27         ImageIcon background = new ImageIcon(Background.class.getClassLoader().getResource("images/img.jpg"));
28         JLabel bkLabel = new JLabel(background);
29         bkLabel.setBounds(0, 0,background.getIconWidth(), background.getIconHeight());
30         this.setSize(background.getIconWidth(), background.getIconHeight());
31         this.getLayeredPane().add(bkLabel,new Integer(Integer.MIN_VALUE));
32         JPanel ctPanel = (JPanel)this.getContentPane();
33         ctPanel.setOpaque(false);
34         
35         //设置按钮样式
36         jb.setPreferredSize(new Dimension(100,40));//设置大小
37         jb.setBackground(new Color(118,238,0));//设置背景色
38         jb.setForeground(Color.WHITE);//设置前景色
39         jb.setFont(new  java.awt.Font("微软楷体",  1,  20)); //设置字体样式
40         
41         this.addWindowListener(new WindowAdapter() {
42             public void windowClosing(WindowEvent arg0) {
43                 System.exit(0);
44             }            
45         });
46         this.setVisible(true);
47     }
48 
49 }

 

 图片放置:(创建的Java项目里的)src > New > Folder > Folder name:images > finish,染回将图片粘贴到images里

效果图:

转载于:https://www.cnblogs.com/huangyichao-39/p/7294670.html

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值