当前位置: 代码迷 >> J2SE >> 关于在for循环中的JLabel解决办法
  详细解决方案

关于在for循环中的JLabel解决办法

热度:60   发布时间:2016-04-23 19:38:00.0
关于在for循环中的JLabel
n=9
public  void methodLilt(JLabel lable ){

datas=data.Da(n);
 lable.setText("");
  for(int i=0;i<n;i++){
      if(i !=0 && i%6 ==0)
       lable.setText("<html>" +lable.getText() + 
         "<br>" +datas[i]+"</html>" );
      else
   lable.setText( lable.getText()+   datas[i]+"," );
      
    
  } 
    } 


但是只输出6个数,而不是9个。。。为想要的是5个换行,然后输出4个  ,,,,,但是现实是5个换行,然后只输出1个
------解决思路----------------------
<html></html>只要出现在开头和结尾就好了,不要每次都出现;
你可以用StringBuilder作为容器,把你的内容添加完了,一次性调用setText。
------解决思路----------------------
setText()……在for循环里每执行一次这个方法,都是覆盖而不是叠加……正如楼上所说,用一个StringBuffer把内容都加完,循环结束后再setText
  相关解决方案