Swing上一个很让误解的地方

系统 1483 0

今天在修改我一个Calendar的Swing项目,在实现一个功能,就是做标志的时候,如果原来的颜色是蓝色的话,再点一下就变成了透明,(因为Calendar的背景是一张海贼王的图片),如果不是蓝色的话,那点一下就变成蓝色。

 

原来我的代码是:

    for(int i=0;i<42;i++){
			final DateLabel label = new DateLabel("   ",JLabel.CENTER);
			calendarPanel.add(label);
			dateLabels[i] = label;
			label.addMouseListener(new MouseListener(){
				public void mousePressed(MouseEvent e){
					if(markFlag){
						if(label.getBackground().equals(Color.BLUE)){
							
							label.setOpaque(false);
						}else{
							label.setOpaque(true);
							label.setBackground(Color.BLUE);
						}
					}
					
			    }
				public void mouseReleased(MouseEvent e){
			        
			    }
			    public void mouseEntered(MouseEvent e){
			        
			    }
			    public void mouseExited(MouseEvent e){
			        
			    }
			    public void mouseClicked(MouseEvent e){
	
			    }
			});
			
		}
  

  

 运行后,发现Label的背景色变成蓝色后,无法变回透明,于是试着改成这样。

 

    for(int i=0;i<42;i++){
			final DateLabel label = new DateLabel("   ",JLabel.CENTER);
			calendarPanel.add(label);
			dateLabels[i] = label;
			label.addMouseListener(new MouseListener(){
				public void mousePressed(MouseEvent e){
					if(markFlag){
						if(label.getBackground().equals(Color.BLUE)){
							label.setBackground(Color.WHITE);
							label.setOpaque(false);
						}else{
							label.setOpaque(true);
							label.setBackground(Color.BLUE);
						}
					}
					
			    }
				public void mouseReleased(MouseEvent e){
			        
			    }
			    public void mouseEntered(MouseEvent e){
			        
			    }
			    public void mouseExited(MouseEvent e){
			        
			    }
			    public void mouseClicked(MouseEvent e){
	
			    }
			});
			
		}
  

 

结果发现行了。 ,狂晕,为什么把背景色变成透明,还要再定义背景的颜色呢(PS:我用的已经是JDK1.6了)

Swing上一个很让误解的地方


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论