Ich habe folgenden Code. Ich muss das JTextPane-Objekt aktualisieren, wenn sich die Ergebnisvariable ändert. Ergebnisvariable ändert sich ordnungsgemäß, es wurde getestet. Dieser Code funktioniert als Thread. Ich habe wirklich keine Idee, wie ich es lösen könnte, vielleicht wäre ein eventlistener dort gut?Thread JFrame muss aktualisiert werden JTextPane
public class GeneralShopFrame implements Runnable, Observer{
private double result = 0 ;
JFrame jf = new JFrame();
JPanel buttonPanel = new JPanel();
JTextPane jtp = new JTextPane();
@Override
public void run() {
String[] tab = { "Data_0.txt", "0" } ;
GeneralShopThread gst = new GeneralShopThread(tab);
Runnable r = gst;
Thread t = new Thread(r);
t.start();
GeneralShopFrame gsf = new GeneralShopFrame();
gst.addObserver(gsf);
jtp.setText("Current value of result is " + result); //I NEED UPDATE IT
buttonPanel.add(jtp);
buttonPanel.setPreferredSize(new Dimension(400, 200));
jf.add(buttonPanel, BorderLayout.CENTER);
jf.pack();
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setVisible(true);
}
public GeneralShopFrame(String[] args) {
}
@Override
public void update(Observable o, Object arg) {
result = (double) arg;
System.out.println(makespan);
}
}
Das ist Arbeit !! Danke! Ich habe ein paar Stunden verloren, um es zu lösen. – marylin17