Autostart und Schleifenkonstruktionen

Mitglied: SamTrex

SamTrex (Level 1)

14.08.2006, aktualisiert 15.08.2006, 4023 Aufrufe, 2 Kommentare

Hallo mal wieder!
Ich möchte mich mit zwei Fragen an euch wenden ...
Es geht um .Net in VB Studio 2005

1.
Eine Windows Applikation beginnt ja mit:
Private Sub frmMAIN_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Aber alles was ich darin ausführe wird mir nicht angezeigt, da die App ja noch läd. So habe ich bisher immer einen "Start-Button" einsetzen müssen. Welche Möglichkeit habe ich, das die Form läd und anschließend ein Sub ausführt?

2.
Ich habe folgende Schleife:
Do
PB.Value = PB.Minimum
Do
PB.Value += 1
Thread.Sleep(100)
Loop Until PB.Value = PB.Maximum
If but_STATUSHOLD.Checked = True Then Exit Sub
Loop



Wenn ich jetz in meiner Form den Button but_STATUSHOLD anklicke verreckt mir die ganze Anwendung.
Im Prinziep soll die Anwendung eigentlich nur ein Progressbar anzeigen. Um eine Warte oder Ruhestellung zu simulieren.
Sprich but_STANDBY -> Progressbar Marquee laufen lassen
Wird dann but_STATUSHOLD geklickt -> Progressbar anhalten

Kann mir da wer helfen?
Bin neu auf dem Gebiet und brüte schon den ganzen Abend daran.... :( face-sad

Danke im Voraus.
Gruß Sam
2 Kommentare
Mitglied: maneich
15.08.2006 um 00:58 Uhr
Hallo,

ich kenne mich zwar mit VB Studio nicht so aus, aber die MS-Scriptsprachen habe alle ziemlich die gleiche Logic.

Du hast 2 mal do und 3 mal loop, das passt nicht zusammen, jedes do benötigt nur ein loop.

Darüber hinaus kannst du in ener if-Abfrage zwar do > loop ausführen, aber nicht loop ohne vorher end if, wenn do ausßerhalb von if... steht.

MfG maneich
Mitglied: SamTrex
15.08.2006 um 13:36 Uhr
Ja, danke für den Hinweis mit dem Loop. War ein kopierfehler von mir. In der App stimmte es aber. Nur wie kann ich währen die App mit der Schleife beschäftigt ist einen Button ändern ohne das mir alles abstürzt?
Habe schon versucht die Progressbar auf einen eigenen Thread zu legen, nur bekomme ich die Parameter nicht übergeben. Und wenn ich das nicht tue sagt er mir das ein Thread einen nicht erlaubten Zugriff auf eine Variable versucht.

Gruß Dirk