_CH_K_1991_
Lieutenant
- Registriert
- Nov. 2008
- Beiträge
- 772
Hallo zusammen
Ich habe vor kurzem zu Programmieren angefangen (Jetzt kenne ich VBA und etwas VB.NET).
Im VBA funktioniert folgender Code ohne Probleme (Text markieren und Curser in Eingabefeld setzen):
In VB.NET heisst das ganze ja (ich hoffe ich habe es richtig reingetippt, dieser Code habe ich nicht gerade zur Hand):
Dieses .Focus() will bei mir nicht richtig funktionieren, der Text wird zwar nach der Eingabe und nach der Berechnung markiert, aber ganz am Anfang wird in kein Feld der Cursor gesetzt. Wie kann ich das beheben?
Hier noch der komplette Code den ich mal ausprobiert habe, damit ihr versteht in welchem Feld und so ich das Eingegeben habe (das ist der funktonierende VBA Code):
Vielen Dank für Tipps oder Hilfe
Gruss
Ich habe vor kurzem zu Programmieren angefangen (Jetzt kenne ich VBA und etwas VB.NET).
Im VBA funktioniert folgender Code ohne Probleme (Text markieren und Curser in Eingabefeld setzen):
Code:
With txtEingabe
.SelStart = 0
.SelLength = Len(.Text)
.SetFocus
End With
Code:
With txtEingabe
.SelectionStart = 0
.SelectionLength = Len(.Text)
.Focus()
End With
Hier noch der komplette Code den ich mal ausprobiert habe, damit ihr versteht in welchem Feld und so ich das Eingegeben habe (das ist der funktonierende VBA Code):
Code:
Private Sub cmdVerarbeiten_Click()
'Variabeln definieren
Dim sngGeschwindigkeit As Single
Dim sngDauer As Single
Const cDistanz = 2 * 384403
'Geschwindigkeit ermitteln
On Error GoTo KeineZahl
sngGeschwindigkeit = txtEingabe.Text
'Dauer der Reise berechnen
On Error GoTo kein0
sngDauer = cDistanz / sngGeschwindigkeit / 24
'Ergebnis anzeigen
txtAusgabe.Text = sngDauer
GoTo Schluss
'Fehlerbehandlung
KeineZahl: MsgBox "Die Geschwindigkeit muss eine Zahl sein!"
GoTo Schluss
kein0: MsgBox "Die Rechnung kann nicht durch 0 dividiert werden!"
Schluss:
'Eingabetext markieren
With txtEingabe
.SelStart = 0
.SelLength = Len(.Text)
.SetFocus
End With
End Sub
Vielen Dank für Tipps oder Hilfe
Gruss