运行时错误 - JLabel.setText()

时间:2014-04-05 15:05:23

标签: java swing

 String [] texts= new String[26];
        for(int a=0; a<26; a++){

            String te=money[a].getText();
            texts[a] = te; 

            box[a].setText(te);
        } 

在此代码中,我想设置文本框,框是JLabel。我创建了也是JLabel并有文本的资金。我想要,如果我点击一个盒子,我想删除那个盒子和钱与该盒子有相同的文字。为此,我写了这段代码:

for(clickLoop=0; clickLoop<26; clickLoop++){
           box[clickLoop].addMouseListener(new MouseAdapter(){  
                  public void mouseClicked(MouseEvent e){  
                      clickCount++;

                      if(clickCount == 0){
                         box[26].setVisible(false); 
                         JLabel labelReference=(JLabel)e.getSource();
                             ortaPanel.remove(welcome);
                             ortaPanel.revalidate();
                             ortaPanel.repaint();
                             ortaPanel.add(labelReference).setBounds(390,480,im.getIconWidth(),im.getIconHeight());
                             System.out.println("a");                                
                             ortaPanel.add(six).setBounds(305, 465, s.getIconWidth(), s.getIconHeight());
                             labelReference.removeMouseListener(this); 
                      }else if(clickCount == 6){
                         e.getComponent().setVisible(false); 
                         JLabel labelReference=(JLabel)e.getSource();
                             ortaPanel.remove(six);
                             ortaPanel.revalidate();
                             ortaPanel.repaint();
                             //ortaPanel.add(labelReference).setBounds(390,480,im.getIconWidth(),im.getIconHeight());
                             ortaPanel.add(five).setBounds(305, 465, s.getIconWidth(), s.getIconHeight());
                             labelReference.removeMouseListener(this); 
                      }else {

                          e.getComponent().setVisible(false);
                          String esles=((JLabel) e.getComponent()).getText();
                          for(int i=0; i<money.length; i++){
                              if(esles.equals(money[i].getText()) ){
                                  sagPanel.remove(money[i]);
                              }
                          } 
                            }
                      System.out.println(clickCount); 
                  }   
              });  
          }


}  

有些标签工作正常,但大多数都没有用。我不知道为什么?还有一个问题我想问:正如你可以看到上面的代码,我创建了box [i]的文本,与money [i]的文本相同。而不是像我想做的那样随意。我试过但没有成功。你知道我怎么做的吗?提前完成。

0 个答案:

没有答案