2014-02-26 2 views
0

JTextArea 텍스트를 설정하고 추가하는 데 문제가 있습니다. 기본적으로 텍스트를 지우고 그 후에 다른 텍스트를 추가하고 싶습니다. 그 결과 텍스트가 지워지지 않고 텍스트가 추가됩니다. 기본적으로 가지고있는 것을 보여주기 위해 코드를 제공했습니다.추가하기 전에 JTextArea의 텍스트를 설정할 수 없습니다.

public Constructor(){ 
textArea = new JTextArea(); 
textArea.setText("Wow"); 

someBoolean = false; 

someString = "Oh"; 

} 

public someOtherMethod(){ 
    if(!someBoolean){ 

    if(textArea.equals("Wow"){ 
     textArea.setText(""); 
     } else { 

    textArea.append(someString+"\n"); 
    } 

} 
} 

답변

1

textArea 클래스 JTextArea의 개체입니다. 따라서 귀하의 상태는 textArea.equals("Wow")입니다. 항상 false을 반환하는 JTextArea 객체와 String 객체를 비교하고 있습니다. JTextArea에 내부 텍스트를 비교하는 방법을 적절한 방법은 다음입니다 : 그런데

if(textArea.getText().equals("Wow")) 

, 이벤트 발송 쓰레드상에서 setText(...)를 호출하는 것을 잊지 마세요 :

SwingUtilities.invokeLater(new Runnable() { 
    public void run() { 
     textArea.setText(...); 
    } 
}); 
+0

gettext를()를 추가 그것을 고정! –

관련 문제