Einzelnen Beitrag anzeigen

Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#11

Re: Ungültiger threadübergreifender Vorgang

  Alt 3. Apr 2006, 00:11
Ich dachte, ich hätte alles gezeigt...
Wenn du wirklich soviel Code in dein Form werfen willst, hier mal eine All-Inklusive-Methode:
Code:
public void Run(int iterations)
{
  Action<int> addItem = delegate(int item)
  {
    listBox.Items.Add(item);
  };

  ThreadStart call = delegate
  {
    for (int i = 0; i < iterations; i++)
    {
      Thread.Sleep(1000);
      Invoke(addItem, i);
    }
  };

  Thread thread = new Thread(call);
  thread.Start();
}
Invoke ist das Invoke deines Forms, wodurch addItem an den GUI-Thread gehängt wird.
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat