Textbox Integer Variable zuweisen

  • VB6

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von Mad Andy.

    Textbox Integer Variable zuweisen

    Hallo,

    schon mal vorweg ich bin gerade neu in Visual Basic eingestiegen und habe hier folgendes Problem:

    Ich möchte dem Programm sagen, dass Das was in Textfeld1 eingegeben wird (das mus eine Zahl sein) in Variable a gespeichert werden soll.

    Ich habe folgendes geschrieben:

    a = Textfeld1

    jetzt beschwert es sich , dass Textfeld1 kein Interger Typ ist( Variable a ist vom Typ Integer)

    WIe macht man das richtig?

    MfG: Clemens Hartmann
    Ich vermute, dass du Buchstaben in die Textbox eingibst, da gibt es natürlich eine Fehlermeldung, da eine Interger-Variable ja keine Buchstaben enthalten kann. Wenn du Buchstaben oder Buchstaben und Zahlen gemischt in die Textbox eingeben willst, solltest du die Variable als String deklarieren.

    mfG,

    Malcolm
    Also... wenn du einen String aus einer Textbox in eine Integer-Variable bringen willst, darf der Textbox-Inhalt nur Ziffern enthalten.

    Sollte dies der fall sein, überträgst du die Den Wert so:
    intVariable = cInt(Text1.text)

    (Es ist aber notwendig, dass auf jedenfall ausschließlich Ziffern drin sind)


    ___________________

    EDITED:
    ___________________

    Solltest du erwünschen, dass ausschließlich Zahlen gedrückt werden dürfen, musst du bei der Form die Eigenschaft 'KeyPrewiev' auf 'true' stellen und dann folgenden Code bei dem 'KeyPress'-Ereignis einfügen:

    Quellcode

    1. Private Sub Form_KeyPress(KeyAscii As Integer)
    2. If KeyAscii < 48 Or KeyAscii > 57 Then
    3. KeyAscii = 0
    4. End If
    5. End Sub


    Zur erklärung: Wenn keyprewiev aktiviert ist, steht in der Variable KeyAscii der Ascii-Wert des gedrückten Zeichens.

    Die Zahlen (0-9) sind Ascii 48-57. Wenn kleiner oder größer wird es durch den Ascii '0' ersetzt, was einfach nix ist.

    Also: Wenn der Ascii außerhalb des Zahlenbereichs liegt, wird einfach nichts eingegeben.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Mad Andy“ ()

    Also die Fehlermeldung kommt bei mir auch wenn ich "Text1.Text" schreibe, da Buchstaben nichtsdestotrotz nicht an Integer-Variablen zugewiesen werden können. ".Text" kann man einfach weglassen, da es eine Standard-Eigenschaft ist.

    mfG,

    Malcolm
    Hallo zusammen,

    also bei mir läuft das:

    Quellcode

    1. Option Explicit
    2. Private Sub Command1_Click()
    3. Dim intNumber As Integer
    4. Text1.Text = "555"
    5. intNumber = Text1
    6. MsgBox intNumber
    7. End Sub

    problemlos.

    Normaler nimmt VB bei diesen Zuweisungen eine automatische Typkonvertierung der Variablen vor (sofern möglich) auch wird die Standard-Eigenschaft des Steuerelements benutzt.

    Gruß Markus
    Noe...

    Ich benutze leider VB unter Windoof...
    Es gibt hald keine richtig gute alternative unter Linux. :(

    WIE auch immer. Dieses Logo bedeutet, dass ich Bill und sein Teufelswerk verabscheue ;)

    ________________________

    EDITED:
    ________________________

    Hab mir jez mal eine doku über gambas reingezogen und muss sagen, dass das nicht schlecht klingt ^^

    Ich hab hald nur das Problem, dass ich auf meinem Notebook momentan nur knoppix verwenden kann, und da fehlen sound- und wlan-treiber. Das heißt ich muss bei dem Teufelswerk bleiben, bis ich ne externe Festplatte hab :(

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Mad Andy“ ()