PictureBox控件中载入透明背景的PNG图片,PictureBox.BackColor=Color.Transparent,能在Form上呈现透明效果.但是当2个同时载入透明背景的PNG图片重叠时,在上的PictureBox的透明部分会填充Form背景部分而将在下的PictureBox给遮住,该如何使有重叠部分的PictureBox能正常透明呢?另,谁能给个类似接宝石小游戏的源码给我学习下...先谢过

解决方案 »

  1.   

    如果有两个PictureBox同时加载了透明的PNG,并且两个控件有重叠,那么系统在绘制画布的时候只能显示上层的图片,下层图片被透明的部分无法重绘的
      

  2.   

    http://blog.163.com/sunfeiyu_321/blog/static/325828402007101585213888/
    你要的接宝石游戏,不知道是不是这个说的传送宝石游戏。。
      

  3.   

    回2楼,额,无代码,就是2个有重叠部分的PictureBox控件同时载入有透明部分的PNG图片,上层的PictureBox控件的透明部分会显示Form背景,而把下层的PictureBox控件重叠部分给遮掉.回4楼,有什么比较好的解决办法么?回5楼,接宝石游戏,描述起来就是,会从屏幕上部落下不同类型的宝石或者是炸弹,由用户控制可以左右移动的人物来接宝石,接到宝石加分,接到炸弹则扣分...之类的...
      

  4.   

    给你个参考资料
    如何使控件背景透明(例子是Labels,panel) 和PictrueBox一个道理,这种方法能实现想要的效果
    How to Use Transparent Images and Labels in Windows Forms
      

  5.   

    第1种方法: 用一个panel(背景图)代替一个PictrueBox,另一个PictrueBox加到panel中.
    第2种方法: 绘两个Image
      

  6.   

    额,最后发现,即使解决了PictureBox控件重叠透明背景的问题,也还有利用Timer制作PictureBox移动时跟Form背景错位的问题等最后还是放弃了谢谢各位的热心回答。