Java学习笔记之SWING -- 基本SWING程序(思考层地图显示问题-半成品)

前言:最近几天在搞淘宝的店铺,所以几乎把平时的功夫全花上去了,关键还是图片处理上。又应验了那句话:程序员是世界上最会偷懒的人!搞了个批处理图片的软件,一下子搞定不少。觉得最近好像没什么产出,就算没成果,写点想法也好,于是就上来侃一下。其实很早就开始想地图的层的问题。最初是想到了游戏里面人物必须在地图上跑吧,那肯定是在地图的层之上咯。当然,这个是J2ME的事情了,那个说实话我只了解一点点,现在关键的还是想把地图编辑器做出来。地图不止只有地形啊!比如地图上的物品,树木之类的,所以在地图编辑器上还是得实现图层的效果。以下是一些随意的思路,未成熟。

最近倒是在看OReilly的《Java Swing, 2nd Edition》,虽是E文的,但还凑合看了懂大概。突然发现一个JLayeredPane容器,欣喜若狂!它解决了图层的问题。因为在它的add方法中有图层的设置,而且就算添加进去后也是有setXXX方法的,但是关键的问题是出在了我建立第二个图层的目的是显示上面图层中的图片透明处的下一图层(有点拗口),也就是把上面图层的透明效果实现出来,给张测试图效果:

 前面的字是偶自己胡乱写了然后做成PNG的,做成GIF的也无所谓,关键是要有透明!

 这个透明的效果是做出来了,但是这个是建立在把JLabel放到不同的图层中去实现的,但是我一个图层中是不止一个JLabel的,因为一个地形块填充到一个JLabel中去的,而我是要通过GridLayout的布局来实现矩阵排列出整块的地图的,所以我会用一个JPanel来用GridLayout布局add这些JLabel(把整块地图做到一个JLabel中不是不可以,就是在内存中把图形绘制好,然后把这个图填入一个JLabel中去,以后可能会用到这个思想),所以就带来了下面图形中的问题:注意是两张图,当然,呵呵,是我商铺里面的商品内~做下广告,呵呵

注意到图片边上的灰条了么?这个就是JPanel的颜色,也就是说两个JPanel放在不同图层之间是覆盖的效果,即使透明的图,透出来的只是放它的JPanel的底色,而透不出JPanel下的东西,也就是说如果JPanel是透明的就好办了!为了验证我的想法的正确性,特地用透明的测试:果然,失望~

果然,程序执行的结果和我预料的一样,那恶心的底色!到目前为止,按我的想法可能会遇到阻碍,可能会行不通,但是不要紧,关键的是想法,想法很重要,没有想法什么都做不了,即使失败了还是有所收获的!如果JPanel有透明的设置方法那该有多好~我就可以毫无阻碍得顺着我的思路走下去……其实这次也没怎么仔细想那~就匆匆忙忙看了资料里面的东西就直接按想法去做了,疏漏、疏漏啊~下次一定要解决这个问题!呵呵!临晨3点了,受不了了,最近熬夜弄了我满脸的青春痘,过几天老婆要回来了,看到我这个满脸痘痘的样子告诉我妈就事情闹大了……早些歇息咯~~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值