Timer stoppen,wenn in Textbox was eingetragen wird

Hallo zusammen.

Ich lasse mir aus den Zahlen die in zehn Textboxen stehen sekündlich die Summe berechnen und lasse mir die Summe dann in der Textbox txtEndbetrag anzeigen. Jetzt hätte ich es gern, dass der Timer gestoppt wird, sobald die Summe in dieser Textbox über die Tastatur geändert wird. Gibt es für eine TextBox so einen Befehl?

Gruß, Axel

Hallo Axel.

Die Programmierung über den Timer verstehe ich nicht so ganz. Aus Deiner Beschreibung lese ich, daß die Summe ja eigentlich nur neu berechnet werden muß, wenn ein Wert geändert wurde. Für diesen Zweck brauchst Du eigentlich das KeyPress-Ereignis der Textxoxen, jedenfalls, wenn der neu eingegebene Wert mit Return bestätigt wird.
Ein Code dazu könnte folgendermaßen aussehen:

Private Sub Textbox1\_KeyPress(KeyAscii as Integer)
 Selct Case KeyAscii
 Case 13
 KeyAscii = 0
 'Dein Code zum Berechnen der Summe
 End Select
End Sub

Oder ist der Timer für Deine Anwendung unbedingt erforderlich?

Viele Grüße
Carsten

Hallo Carsten,

den Timer brauche ich unbedingt! Die Textboxen sind Teil einer Rechnung, die man ausdrucken kann. Ich habe eine Auflistung von 30 Artikeln mit dessen Preisen. Wenn ich nun mehrere Artikel auswähle, werden dessen Preise in die TextBoxen in der Rechnung übertragen. Aber die Preise in den TextBoxen müssen änderbar sein und da ich die Summe nicht mit einem Button zusammenrechnen möchte, habe ich den Timer genommen, datt is schicker. Nur wenn ich jetzt in „txtEndbetrag“ die Gesamtsumme ändern möchte, dann wird mir die Änderung durch den Timer ja wieder überschrieben. Das muss doch irgendwie gehen, dass ich den Timer stoppen kann, wenn ich in die TextBox „txtEndbetrag“ klicke.

Gruß, Axel

Hallo Axel,

Schalte einfach im keypress Ereignis folgendes der Textbox TxtEndbetrag
den Timer wieder ab. Dies kannst du machen, indem du die Enabled Eigenschaft des Timers auf False setzt! Schimpft sich dein Timer = Timer 1 und die Textbox =txtEndbetrag so würde das dann so ausschauen :smile:

Private Sub txtEndbetrag\_KeyPress(KeyAscii As Integer)
 Timer1.Enabled = False
End Sub

MfG Alex

Hallo Alex,

funktioniert super, so wollte ich es haben!

Danke, Axel

Hallo Alex,

funktioniert super, so wollte ich es haben!

Danke, Axel

Fein, wenn nur alle probleme so einfach wären und die Fragen so praezise gestellt werden würden :wink:

Übrigens, willst du den Timer wieder einschalten, so setze die Methode Enabled wieder auf true :smile:

MfG Alex