Hallo Forum,
ich glaube, ich habe noch ein grundlegendes Verständisproblem was die Zusammenarbeit zwischen Klassen bzw. deren Instanzen angeht.
Ich habe mal folgendes einfaches Konstrukt zum Probieren gebaut:
Das Problem das ich nun habe besteht in dem Aufruf von new Tab1(); in der Klasse Ausgabe. Es wird ein "Invalid thread Access" ausgegeben. Das gleiche, wenn ich versuche new Tab1(); in der Klasse Start zu erzeugen.
Was ist daran falsch? Wie kann ich und vor allem wo eine Instanz der Klasse Tab1 erzeugen?
Bin dankbar für jede Anregung
Gruss
webraccoon
ich glaube, ich habe noch ein grundlegendes Verständisproblem was die Zusammenarbeit zwischen Klassen bzw. deren Instanzen angeht.
Ich habe mal folgendes einfaches Konstrukt zum Probieren gebaut:
Code:
public class Start {
public Start(){
new Ausgabe();
}
public static void main(String[] args) {
new Start();
}
}
Code:
public class Ausgabe extends ShellMain {
public Ausgabe(){
//new Tab1();
print();
}
public void print(){
System.out.println("Ausgabe aufgerufen");
}
}
Code:
public class Tab1 extends ShellMain {
public Tab1(){
print();
}
public void print(){
System.out.println("Tab1 aufgerufen");
}
}
Code:
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.TabFolder;
public class ShellMain {
Display display = new Display();
Shell shell = new Shell(display);
TabFolder tFolder = new TabFolder(shell, SWT.NONE);
}
Das Problem das ich nun habe besteht in dem Aufruf von new Tab1(); in der Klasse Ausgabe. Es wird ein "Invalid thread Access" ausgegeben. Das gleiche, wenn ich versuche new Tab1(); in der Klasse Start zu erzeugen.
Was ist daran falsch? Wie kann ich und vor allem wo eine Instanz der Klasse Tab1 erzeugen?
Bin dankbar für jede Anregung
Gruss
webraccoon