vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Prozeduren zusammenfassen 
Autor: Dimpfe
Datum: 11.11.10 13:56

Hallo zusammen,

erstmal das typische Blabla das ihr eh schon nicht mehr hören könnt...
... Einsteiger, Versuche mich an einem Programm, über Suche nichts gefunden...

Trotzdem hoffe ich auf Hilfe.

Und nun zu meinem Problem:

Ich habe in einer Form mehrere Textfelder die ich direkt nach der Eingabe per Enter und/oder Verlassen des Textfeldes auslesen will und nicht erst mit einem Button, dabei soll der Wert jeweils in einer eigenen Variablen gespeichert werden.

Im Moment kann ich das nur lösen wenn ich für jedes Textfeld eine neue Prozedur erstelle. Bei mehreren Textfeldern wird das aber sehr schnell zu einem Geduldsspiel und ich frage mich ob ich das nicht eleganter lösen könnte.

Ich bin mir fast sicher dass es geht, habe aber noch keine Möglichkeit gefunden das umzusetzen. Wahrscheinlich ist es so simpel dass es auch deshalb nirgends Erwähnung findet.

Hier ein kurzer Auszug aus meinem Code um es etwas besser zu verdeutlichen:
Übergabe mit Entertaste

Private Sub txt_AnteilMatA1_KeyPress(ByVal sender As Object, ByVal e As _
  System.Windows.Forms.KeyPressEventArgs) Handles txt_AnteilMatA1.KeyPress
        If e.KeyChar = Microsoft.VisualBasic.ChrW(Keys.Return) Then
            sgl_AnteilMatA1 = txt_AnteilMatA1.Text
        End If
    End Sub
 
Private Sub txt_AnteilMatA2_KeyPress(ByVal sender As Object, ByVal e As _
  System.Windows.Forms.KeyPressEventArgs) Handles txt_AnteilMatA2.KeyPress
        If e.KeyChar = Microsoft.VisualBasic.ChrW(Keys.Return) Then
            sgl_AnteilMatA2 = txt_AnteilMatA2.Text
        End If
    End Sub
 
    Private Sub txt_AnteilMatA3_KeyPress(ByVal sender As Object, ByVal e As _
      System.Windows.Forms.KeyPressEventArgs) Handles txt_AnteilMatA3.KeyPress
        If e.KeyChar = Microsoft.VisualBasic.ChrW(Keys.Return) Then
            sgl_AnteilMatA3 = txt_AnteilMatA3.Text
        End If
    End Sub
Und das geht dann so weiter...

Es kommt noch einiges mehr im Code selbst hinzu, würde es aber nur unübersichtlich machen.

Man sieht der Code der einzelnen Prozeduren ist nicht 100% gleich aber immer ähnlich. Der einzige Unterschied besteht in der jeweils abgefragten Textbox und der zugehörigen Variablen.
Ich hätte gerne eine Möglichkeit diese Prozeduren zusammenzufassen.
Ich keine Ahnung wie ich das bewerkstelligen könte.

Vielleicht etwas in der Art:
Ereignissprozedur1, Ereignissprozedur2, Ereignissprozedur3, ... ((ByVal sender _
  As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles _
  Ereignis1, Ereignis2, Ereignis3, ...
 
Programmcode für txt1, txt2, txt3, ...
Gibt es da eine Möglichkeit?

Wie bereits oben erwähnt möchte ich nicht über einen Button alle Variablen auf einmal übergeben sondern sobald etwas eingegeben wurde. Das löse ich zurZeit über KeyPress und Leave. Ist in der Bedienung des Programms meiner Ansicht nach sehr komfortabel. Bin dennoch für Vorschläge offen.


Ich hoffe ihr könnt mir helfen. Gerne auch mit einem Link falls das hier schon irgendwo in den Tiefen des Forums einmal behandelt wurde.

Dimpfe
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Prozeduren zusammenfassen983Dimpfe11.11.10 13:56
Re: Prozeduren zusammenfassen696wb-soft11.11.10 14:31
Re: Prozeduren zusammenfassen688Dimpfe11.11.10 21:25
Re: Prozeduren zusammenfassen708Manfred X11.11.10 17:36
Re: Prozeduren zusammenfassen657Dimpfe11.11.10 21:30

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel