So, hab schon wieder ein Problem. Jetzt hab ich versucht die Methode
ausgabe() in einem Thread laufen zu lassen, da dass gut zu meinen zuküftigen erweiterungen passen würde.
Nur geht das nicht so ganz. Der Thread dürfte funktionieren, da mir das println etwas in die Konsole schreibt. Nur leider ersetzt die Funktion ausgabe, wenn sie im Thread aufgerufen wird, nicht das bild.
ausgabe() in einem Thread laufen zu lassen, da dass gut zu meinen zuküftigen erweiterungen passen würde.
Nur geht das nicht so ganz. Der Thread dürfte funktionieren, da mir das println etwas in die Konsole schreibt. Nur leider ersetzt die Funktion ausgabe, wenn sie im Thread aufgerufen wird, nicht das bild.
Java:
import javax.swing.*;
import java.awt.*;
public class Test extends JFrame impements JFrame{
static JButton btOK = new JButton("OK");
static JButton btExit = new JButton("Ende");
JPanel plButtons = new JPanel();
JLabel imageLabel;
Test () {
super("ein Test");
plButtons.setLayout(new GridLayout(0,2));
plButtons.add(btOK);
plButtons.add(btExit);
getContentPane().setLayout( new BorderLayout() );
getContentPane().add("South", plButtons );
setSize(10,20);
imageLabel = new JLabel(new ImageIcon("bild2.jpg"));
getContentPane().add("North", imageLabel);
}
public static void main(String[] args) throws Exception {
Test wnd = new Test();
wnd.setLocation(100, 100);
wnd.setSize(300, 200);
wnd.setVisible(true);
Thread.sleep(1000);
wnd.startthread();
}
public void ausgabe (){
imageLabel.setIcon(new ImageIcon("bild1.jpg"));
pack();
}
public void startthread() {
Thread th = new Thread();
th.start();
}
publiv void run () {
try {
System.out.println("irgendwas");
ausgabe();
} catch (InterruptedException e) {
}
}
}