我正在尝试清除上面写有内容的文本区域。我一直在尝试使用 repaint() 方法,因为我认为这种方法会重置文本区域,但它一直没有工作。
我正在使用文本区域和列表。单击列表中的成员时,该成员将显示在文本区域中。因此,当它们被“取消选择”时,我需要以前编写的成员从文本区域中消失。
这是 valueChanged 的代码,这就是事情发生的地方:
public void valueChanged(ListSelectionEvent e)
{
Object source = e.getSource();
int[] indices = songList.getSelectedIndices();
DecimalFormat df = new DecimalFormat("#0.00");
Song[] selection = new Song[indices.length];
for(int i = 0; i < indices.length; i++)
{
selection[i] = songCollection[indices[i]];
}
if(e.getValueIsAdjusting() == false)
{
for(int i = 0; i < selection.length; i++)
{
textArea.repaint(); //Shouldn't this work?
textArea.append(selection[i].getTitle() + " " + selection[i].getArtist() + " " + df.format(selection[i].getPrice()) + "\n" );
}
}
}
PS,我对 Stack Overflow 还很陌生,所以如果我做错了什么,请随时告诉我。