hallo,
Ich hab mal auch wieder ein Problem
Das Programm ist mit SWT geschrieben.
Hier lege ich ein Objekt von meinem Thread an und starte ihn. Übergabewerte sind eine Liste (mit Daten gefüllt)und einen Browser.
Das ist die Variablendeklaration und der Konstruktor in meinem Thread.
Das ist die einzige Methode die in run aufgerufen wird. Hier möchte ich einfach jedes element der liste abarbeiten.
Mein Problem ist jetzt, dass ein Fehler kommt, sobald was mit der Liste oder dem Browser gemacht wird.
Der fehler kommt also bei list.getSelectionCount(). Mach ich das weg kommt der Fehler wenn ich das nächste mal was mit der Liste mache. Nehme ich die Liste ganz raus, ist das gleiche mit dem Browser.
Woran kann das liegen
Ich hab mal auch wieder ein Problem
Das Programm ist mit SWT geschrieben.
Hier lege ich ein Objekt von meinem Thread an und starte ihn. Übergabewerte sind eine Liste (mit Daten gefüllt)und einen Browser.
Code:
if(e.getSource()==start)
{
th=new MeinThread(list,browser);
th.start();
}
Das ist die Variablendeklaration und der Konstruktor in meinem Thread.
Code:
List list=null;
Browser browser;
Farmen(List list, Browser browser)
{
this.list=list;
this.browser=browser;
}
Das ist die einzige Methode die in run aufgerufen wird. Hier möchte ich einfach jedes element der liste abarbeiten.
Code:
private void MeineMethode()
{
try{
for(int i=0;i<list.getSelectionCount();i++){
list.setSelection(i);
browser.setUrl("http://tutorial.de");
System.out.println(list.getSelection()[0]);
Thread.sleep(10000);
}}
catch(Exception e)
{
e.printStackTrace();
}
}
Mein Problem ist jetzt, dass ein Fehler kommt, sobald was mit der Liste oder dem Browser gemacht wird.
Code:
org.eclipse.swt.SWTException: Invalid thread access
at org.eclipse.swt.SWT.error(SWT.java:2691)
at org.eclipse.swt.SWT.error(SWT.java:2616)
at org.eclipse.swt.SWT.error(SWT.java:2587)
at org.eclipse.swt.widgets.Widget.error(Widget.java:381)
at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:284)
at org.eclipse.swt.browser.Browser.setUrl(Browser.java:1104)
at MeinThread.MeineMethode(MeineKlasse.java:132)
at MeinThread.run(MeineKlasse.java:128)
Der fehler kommt also bei list.getSelectionCount(). Mach ich das weg kommt der Fehler wenn ich das nächste mal was mit der Liste mache. Nehme ich die Liste ganz raus, ist das gleiche mit dem Browser.
Woran kann das liegen