Autor Beitrag
revero275
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Mo 02.04.07 16:01 
--------------------------------------------------------------------------------
ich habe ein Programm für ein Gerät geschrieben, das die Quantität des Sauerstoffs im Körper und Herzfrequenz berechnet, und ich soll diese Werte in listview zeigen das was mir bis jetzt nicht gelungen ist
und ich bekomme immer dieser fehlermeldung exception: Cross-thread operation not valid: Control „label_HR“ accessed from a thread other than the thread it was created on. ich brauche dringend euere vorschaläge

Moderiert von user profile iconChristian S.: Quelltext als Anhang eingefügt

vielen Dank
Robert_G
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 416


Delphi32 (D2005 PE); Chrome/C# (VS2003 E/A, VS2005)
BeitragVerfasst: Mi 04.04.07 23:06 
Dein Problem ist, dass du versuchst direkt aus einem anderen Thread, auf die GUI zuzugreifen.
Da SWF nicht threadsafe ist, wird diese Fehlermeldung ausgegeben.
Du kannst die Methode "invoke" von SWF.Control benutzen um Code von deinem Thread an den GUI Thread anzuhängen.
Mit anonymen Methoden ist das sehr einfach möglich: :-)
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
MethodInvoker call = delegate
{
  // hier den Code, mit dem du auf die GUI zugreifen willst
  DeinListView.DoSomething();
};

DeinListView.Invoke(call);