Ergebnis 1 bis 7 von 7
  1. #1
    Stanley Jobson Avatar von Bi0sh0k
    Registriert seit
    17.12.2007
    Beiträge
    773

    Standard VB6 If Überprüfung mit 4 möglichen Texten in einer Combo. Wie macht mans richtig?

    Ich möchte das in einer ComboBox der Text überprüft wird und dann etwas bestimmtes geschehen soll. Doch das Problem ist die ComboBox soll überprüfen ob eine der Angaben in dem Combo1.Text vorhanden ist und falls nicht, dann soll die Combobox nichts enthalten, aber leider klappt das hiermit nicht:

    If Not Combo1.Text = "ReadAByte" Or "ReadAnInt" Or "ReadALong" Or "ReadAFloat" Then Combo1.Text = ""


    Es kommt nur ein Debuggingfehler...

    Was könnte ich tun?

    _______________________________

    GFX Showroom
    Klick mich!
    _______________________________



  2. #2
    It's Toasted!!
    Registriert seit
    08.08.2007
    Beiträge
    375

    Standard

    Stichwort "Select Case":
    Code:
    Select Case Combo1.Text
    Case "text1": [...]
    Case "text2": [...]
    End Select
    Ist jetzt aus dem Kopf geschrieben, lange kein vb6 mehr benutzt.

  3. #3
    Stanley Jobson Avatar von Bi0sh0k
    Registriert seit
    17.12.2007
    Beiträge
    773

    Standard

    Und wie soll ich das in einem Case machen?

    Das hier funzt nich:

    Select Case (Combo1.Text)
    Case "ReadAByte":
    'An dieser Stelle soll er den den Sub verlasssen (Befehl?)

    Case "ReadAnInt":
    'An dieser Stelle soll er den den Sub verlasssen (Befehl?)

    Case "ReadALong":
    'An dieser Stelle soll er den den Sub verlasssen (Befehl?)

    Case "ReadAFloat":
    'An dieser Stelle soll er den den Sub verlasssen (Befehl?)
    Else
    Combo1.Text = ""
    End Select

    _______________________________

    GFX Showroom
    Klick mich!
    _______________________________



  4. #4
    Sobig Wurm Avatar von Macacity
    Registriert seit
    19.07.2008
    Beiträge
    229

    Standard

    Versuch es doch mal so:

    bin jetzt nicht sicher, ob es so richtig ist, aber etwas Eigeninitiative kannst du ja auch zeigen..
    Code:
    Select Case (Combo1.Text)
    Case "ReadAByte":
    End sub
    
    Case "ReadAnInt":
    End Sub
    Case "ReadALong":
    End Sub
    
    Case "ReadAFloat":
    End Sub
    case Else
    Combo1.Text = ""
    End Select
    btw: der erste Google Treffer: http://www.vb-seminar.de/vb_21.htm

    MfG Macacity

  5. #5
    Stanley Jobson Avatar von Bi0sh0k
    Registriert seit
    17.12.2007
    Beiträge
    773

    Standard

    Ja "Case Else" war richtig.
    Ich hatte erst "Case Default" was in C# das gleiche wie "Case Else" in Vb6
    Und mit If gings auch nicht. XD
    Mann son nah an der Lösung gewesen. Es war "Exit Sub" aber trozdem danke für den Tipp. Thx

    _______________________________

    GFX Showroom
    Klick mich!
    _______________________________



  6. #6
    Trojaner
    Registriert seit
    26.03.2007
    Beiträge
    63

    Standard

    da ich seinen letzen post überlesen hab hab ich es wieder editiert, die übersichtlichste lösung wäre

    Code:
    Select Case Combo1.Text
    Case "ReadAByte", "ReadAnInt", "ReadALong", "ReadAFloat"
      Exit Sub ' oder Exit Function
    Case Else
      Combo1.Text = ""
    End Select

    so wie du das geschrieben hast bedeutet es

    Code:
    If Not Combo1.Text = "ReadAByte" Or "ReadAnInt" Or "ReadALong" Or "ReadAFloat" Then Combo1.Text = ""
    If Not Combo1.Text = "ReadAByte" Or "ReadAnInt" = TRUE Or "ReadALong" = TRUE Or "ReadAFloat" = TRUE Then Combo1.Text = ""
    und da Combo1.text ein string ist kannst du es nich tmit einem boolean vergleichen , auser du machst Cbool(combo1.text) aber dann wurde es immer true zurück geben wenn iwas drinnstehet, glaub ich...
    Geändert von Jura (03.06.2009 um 22:14 Uhr)
    ###########################
    #.......proggt seinen eigenen RAT:p....#
    ##########################

  7. #7
    CIH-Virus Avatar von Perishand
    Registriert seit
    11.08.2007
    Beiträge
    437

    Standard

    Zitat Zitat von FreeHacker666 Beitrag anzeigen
    If Not Combo1.Text = "ReadAByte" Or "ReadAnInt" Or "ReadALong" Or "ReadAFloat" Then Combo1.Text = ""

    Was könnte ich tun?
    Du musst bei jeder Or abfrage deinen Vergleichswert erneut abfragen.

    Code:
    if not combo1.text = "ReadAByte" or combo1.text = "ReadAnInt" or combo1.text = "ReadALong" or combo1.text = "ReadAFloat" then
    
    combo1.text = ""
    
    end if

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •