2 개의 다른 JTextArea에 스레드가 지정한 시간을 표시하는 프로그램을 작성해야합니다. 시간은 임의의 시간 간격으로 업데이트됩니다. 또한 스레드는 버튼으로 중지 할 수 있으며 다시 클릭하여 다시 시작할 수 있습니다. 나는 다른 클래스의 GUI를 모두 가지고있다.2 개의 스레드와 2 개의 JTextArea
내 문제 : 다른 클래스의 JTextArea에 대한 참조를 추가하는 방법은 무엇입니까? 스레드를 중지하고 버튼을 사용하여 재개하는 방법은 무엇입니까? 스레드 클래스에서 다음
코드 :
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import javax.swing.JTextArea;
public class MyThread implements Runnable {
StopResume main = new StopResume();
String name;
Thread t;
JTextArea a;
String date;
DateFormat to = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
Date today = Calendar.getInstance().getTime();
public MyThread(String threatName) {
name = threatName;
t = new Thread(this, name);
t.start();
}
public static void main(String[] args) {
//area1.append(date);
//area2.append(date);
//date = to.format(today);
}
@Override
public void run() {
try {
for(int i = 0; i < 20; i++){
t.sleep(1000);
}
}catch (InterruptedException e) {
e.printStackTrace();
}
}
}
확인. 난 임의성을 추가하고 lloop 동안. 그렇다면 어떻게 GUI에 대한 참조를 전달하도록 쓰레드 생성자를 변경할 수 있습니까? – sokol
@sokol : 대부분의 생성자가 참조를 전달하는 방법은 무엇입니까? 이 질문은 당신이 이미 알고 있어야하고 이미 알고있는 기본적인 핵심 Java 개념이기 때문에이 질문을 던집니다. –