C# Thread+Form öffnen

ActiveO2

Ensign
Registriert
Feb. 2009
Beiträge
161
Hallo,

ich habe mir vorhin einen Thread erstellt.
in diesem Thread steht:

Code:
int a = System.Windows.Forms.SystemInformation.MonitorCount;               //Anzahl Monitore

private void frm_1_Load(object sender, EventArgs e)
        {
            Thread trd = new Thread(new ThreadStart(this.ThreadTask));               //Thread erstellen
            trd.IsBackground = true;
            trd.Start();               //Thread starten

        ...
        }

private void ThreadTask()
        {            
            for (; a >= 2; a--)
            {
                frm_1 b = new frm_1();               //frm_1 ist der name der Form
                b.ShowDialog();              //Form "öffnen"
            }            
           
        }
Das sollte eigentlich bewirken, dass diese Form so oft geöffnet wird bis a == 2 ist.



Stattdessen wird ständig eine Form geöffnet, bis sich mein pc abschießt (weil ich das Programm nicht rechtzeitig beenden kann.

Kann mir bitte jemand sagen wo mein Fehler liegt?

Danke!


Gruß,

Active



PS:
ich lade die Form ja immer komplett neu, ich muss eine Klasse einbauen, die mir nen bool o.Ä speichert
Diese ruf ich dann vor dem Threadstart auf....
soweit mein Lösungsansatz.
Ist mir gerade erst eingefallen.
Werde es nachher versuchen.
 
Zuletzt bearbeitet:
Kannst du mal den ganzen Code der run()-Methode, bzw. das drum herum posten? Und bitte künftig [.code]-Tags verwenden, das macht das ganze lesbarer. ;)
 
Warum initialisierst Du "a" mit der Anzhal der phy. Monitore?

Code:
 for (int a = 0; a < 2; a++)
            {
                frm_1 b = new frm_1();               //frm_1 ist der name der Form
                b.ShowDialog();              //Form "öffnen"
            }

so sollte es gehen.

Arbeit lieber mit den increment, daher ++
 
das Programm soll pro angeschlossener Bildschrim, auf dem jeweiligen ausgeführt werden.
sobald ich die frm öffne, wird die for-Schleife nochmal aufgerufen -> das programm wird dann endlos neu gestartet.
ich schau mal ob ich es mit einer Klasse hinbekomme
 
Zurück
Oben