KeyDown und Ereignisprozeduren

13/01/2009 - 21:30 von Michael Pleick | Report spam
Hallo Leute,

ich habe eine Ereignisprozedur geschrieben, die ich mehreren Textboxen
zuweise und über KeyDown auslöse und nach der Eingabetaste filtere.

Sie ist in etwa so aufgebaut und wird jeder Textbox mit
AddHandler, AdressOd... zugwiesen.

sub Textbox_Keydown()
if keydown = keys.enter then
if activecontrol.name="TextBox1" then
me.textbox2.focus
elseif activecontrol.name="TextBox2" then
me.textbox3.focus
end if
end if
end sub

Mit dieser Prozedur prüfe ich den Namen der aktuellen Textbox und führe
danach bestimmte Anweisungen aus. Leider ist diese Vorgenhensweise
unzuverlàssig. Sehr hàufig wird die Ereignisprozedur doppelt ausgeführt, was
dazu führt, das Textfelder übersprungen werden.

Als Lösung habe ich nun für jede Textbox eine eigene Ereignisprozedur
geschrieben. Damit funktioniert zwar mein Formular, aber mein Code ist
aufwendiger zu verwalten (meine ich).

wie kann ich mein Problem nun Lösen oder, warum wird die Ereignisprozedur,
zugewiesen über addhandler... bei mir doppelt ausgeführt?

oder geht es gar nicht so wie ich denke?

Gruß

Michael Pleick
 

Lesen sie die antworten

#1 Herfried K. Wagner [MVP]
13/01/2009 - 23:13 | Warnen spam
Hallo Michael!

"Michael Pleick" schrieb:
ich habe eine Ereignisprozedur geschrieben, die ich mehreren Textboxen
zuweise und über KeyDown auslöse und nach der Eingabetaste filtere.

Sie ist in etwa so aufgebaut und wird jeder Textbox mit
AddHandler, AdressOd... zugwiesen.

sub Textbox_Keydown()



Was steht konkret hinter den Punkten?

if keydown = keys.enter then
if activecontrol.name="TextBox1" then
me.textbox2.focus
elseif activecontrol.name="TextBox2" then
me.textbox3.focus
end if
end if
end sub



Möchtest Du erreichen, daß durch Drücken der Eingabetaste zwischen
Textfeldern gewechselt wird?

Enter Instead of Tab | Duncan Mackenzie .NET
<URL:http://www.duncanmackenzie.net/blog...t.aspx>

M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://dotnet.mvps.org/dotnet/faqs/>

Ähnliche fragen