Java学习笔记之SWING -- 基本SWING程序(多层次地图的一个重要实现)

前言:最近一直在管淘宝上的小店,本来想GF如果从广州回来的话给她做的,后来想想这个店一共一个月才能赚多少钱啊?而且养活不了她,所以最近没开始那么有干劲了,还是回来看看Swing了。真的是没有“知识”做什么都不行啊,甚至连做个地图编辑器中的层次地图显示都有难度,真是可怜的人啊我!还好前几天看到个重要的东西,透明!嘿嘿,不正是我现在所需要的么?前几天一直没测试,今天睡不着,正好来测试下。觉得,如果看完了《O'Reilly - Java Swing 2nd Edition》的话还是有很大的帮助的,虽然一直磨磨蹭蹭才把第三章看掉(我连Preface都看的哦~是偶的一的本英文书啊~哎,真不巧,选了这么厚本),但是已经受益匪浅了。

        突然想起了前段时间看到的Opaque,貌似是让component本身是否透明显示的,几乎通宵了,又没有事情可干,于是想到何不测试下效果?嘿嘿,果然!成功了内~哎,自己疏于看书啊~最近忙啊,忙疯了都!给个效果图吧~对于完成的实现,就暂且给出源码吧,^_^。

嘿嘿~效果还不错类~这个可是加在JPanel上的哦~

为了对比期间,再次给出上次未有透明效果的图:这个是上一次的,看到灰色的组件默认颜色了没?

        Hence,这下我可以大展拳脚一下了!说笑那~下面是实现效果的代码,其中上层的图片为透明的png格式。

import  javax.swing. * ;
import  java.awt. * ;

public   class  LayerTest  {
    
/**
     * Method main
     *
     *
     * 
@param args
     *
     
*/

    
public static void main(String[] args) {
        
// TODO: 在这添加你的代码
        JFrame frame = new JFrame("层容器测试");
        frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE);
        JLayeredPane layer 
= new JDesktopPane();
        
        JLabel label;
        JPanel jp;
        label 
= new JLabel(new ImageIcon("1.jpg"));
        label.setBounds(
2020600480);
        jp 
= new JPanel();
        jp.setBounds(
5050 , 640480);
        jp.add(label, BorderLayout.CENTER);
        jp.setOpaque(
false);
        layer.add(jp, layer.DEFAULT_LAYER);
        jp 
= new JPanel();
        jp.setBounds(
400100480640);
        jp.setOpaque(
false);
        jp.add(
new JLabel(new ImageIcon("1.png")), BorderLayout.CENTER);
        layer.add(jp, layer.MODAL_LAYER);
        frame.add(layer, BorderLayout.CENTER);
        frame.setSize(
800600);
        frame.setVisible(
true);
    }


}

        呵呵,只要我的想法被实现出来就觉得是干劲无限啊!看来今天要早点起床了!争取12点之前起来!对了,明天不要忘记要给妈妈买香蕉吃,MS这几天有点便秘= =!今天给忘记了~哎~~不孝子啊!晕,天都亮了……

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值