Yahoo Clever wird am 4. Mai 2021 (Eastern Time, Zeitzone US-Ostküste) eingestellt. Ab dem 20. April 2021 (Eastern Time) ist die Website von Yahoo Clever nur noch im reinen Lesemodus verfügbar. Andere Yahoo Produkte oder Dienste oder Ihr Yahoo Account sind von diesen Änderungen nicht betroffen. Auf dieser Hilfeseite finden Sie weitere Informationen zur Einstellung von Yahoo Clever und dazu, wie Sie Ihre Daten herunterladen.
Visual Basic 2008: Es soll sich nur EINE MsgBox öffnen nachdem Progressbar voll ist. Wie schaff' ich das ?
Hallo, habe ein kleines Programm geschriben das folgendermaßen aussieht:
Man öffnet es, eine Progressbar beginnt sich zu füllen.
Nach 10 Sekunden ist sie voll. Sobald sie voll ist, soll sich eine MessageBox öffnen.
Das Problem:
Es öffnet sich nicht EIN Fenster, sondern unendlich viele ! Und ich hab einfach keine Ahnung, wie ich das beheben soll.
Hier der Code des Timers:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Timer1.Tick
ProgressBar1.Increment(1)
If ProgressBar1.Value = ProgressBar1.Maximum Then
MsgBox("Progressbar voll !")
End If
End Sub
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Warum wird die Aktion denn nicht nur Einmal ausgeführt, sondern solange wie die Progressbar voll ist ? :( Und: Wie schaff ich es so, wie ich es will ? Ich verzweifel und bitte um Hilfe.
Lg, -cReep
Perfekt, hat funktioniert mit "Timer1.stop()". Hab nur keine Ahnung, wie du das mit der boolschen Variable meinst. :) Wäre nett, wenn du das noch ergänzen könntest.
3 Antworten
- vor 1 JahrzehntBeste Antwort
Das Problem liegt daran dass du den Timer1 anhalten muss!! bevor die MsgBox erscheint!
So sollte es klappen oder so ähnlich..
Timer1.tick
ProgressBar1.Increment(1)
If ProgressBar1.Value = ProgressBar1.Maximum Then
Timer1.stop
MsgBox("Progressbar voll !")
ich hoffe ich konnte dir helfen
Quelle(n): hatte das Problem selber ^^ - vor 1 Jahrzehnt
Ich kenne mich in Basic nicht aus, denke aber das die Inkrementation nicht mehr stattfindet, wenn die Progress-Bar einmal voll ist, und die If-Abfrage somit immer wahr ist. Du könntest innerhalb dieser If-Abfrage entweder den Timer stoppen - "Timer1.stop()" - oder eine boolsche Variable abfragen und beim ersten Aufruf umschalten, so dass trotz mehrmaligem Tick des Timers nur einmalig die MessageBox angezeigt wird.