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]的文本相同。而不是像我想做的那样随意。我试过但没有成功。你知道我怎么做的吗?提前完成。