Java setOpaque(false) 使用方法

标题Java setOpaque(false) 使用方法

及设置背景

package WIN;

import java.awt.Color;
import java.awt.Font;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class MainJFrame extends JFrame { 
	/**
	 * 
	 */
	private static final long serialVersionUID = -7102537269563953544L;

	public void Icon(){
	
	}
	public MainJFrame() {
		//Set title
		super("Lan");
		//Set size
		setSize(1600,980);
		//Setposition
		setLocation(200, 50);
		
		//背景图片的路径。(相对路径或者绝对路径。本例图片放于"java项目名"的文件下)
		String path = "background.jpg";
		// 背景图片
		ImageIcon background = new ImageIcon(path);
		// 把背景图片显示在一个标签里面
		JLabel label = new JLabel(background);
		// 把标签的大小位置设置为图片刚好填充整个面板
		label.setBounds(0, 0, this.getWidth(), this.getHeight());
		// 把内容窗格强制转化为JPanel,否则不能用方法setOpaque(false)来使内容窗口透明
		JPanel imagePanel = (JPanel) this.getContentPane();
		
		imagePanel.setOpaque(false);
		// 把背景图片添加到分层窗格的最底层作为背景
		this.getLayeredPane().add(label, new Integer(Integer.MIN_VALUE));
	
		
		JPanel panel=new JPanel();
		panel.setLayout(null);
		panel.setOpaque(false);
		label.add(panel);
		panel.setBounds(200, 300, 500, 400);
		//Id
		JLabel label2=new JLabel("账号 :");
		panel.add(label2);
		label2.setBounds(100,80,50,40);
		label2.setFont(new Font("华文彩体",Font.HANGING_BASELINE,18));
		label2.setOpaque(false);
		//
		JTextField textField=new JTextField();
		panel.add(textField);
		textField.setBackground(Color.green);
		textField.setBounds(160,80,200,34);
		textField.setOpaque(false);
		textField.setBackground(Color.black);
		//password
		JLabel label3=new JLabel("密码 :");
		panel.add(label3);
		label3.setBounds(100, 125, 50, 40);
		label3.setFont(new Font("华文彩体",Font.HANGING_BASELINE,18));
		label3.setOpaque(false);
		// Set object To JPasswordField
		JPasswordField jp = new JPasswordField(30);
		panel.add(jp);
		jp.setEchoChar('\u2605');//'\u2605' is star shape
		jp.setOpaque(false);
		jp.setBounds(160, 125, 200, 34);
		//按钮块
		JButton jButton=new JButton("登录");
		panel.add(jButton);
		jButton.setBounds(170, 175, 60, 30);
		jButton.setFont(new Font("华文彩体",Font.HANGING_BASELINE,13));
		jButton.setOpaque(false);
		jButton.setBackground(Color.green);
		//
		JButton jButton2=new JButton("注册");
		panel.add(jButton2);
		jButton2.setBounds(270, 175, 60, 30);
		jButton2.setBackground(Color.green);
		jButton2.setFont(new Font("华文彩体",Font.HANGING_BASELINE,13));
		jButton2.setOpaque(false);
		
		//设置可见
		setVisible(true);
		//点关闭按钮时退出
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
 
	public static void main(String[] args) {
		new MainJFrame();
	}
}

效果图
在这里插入图片描述

  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值