Lookup table

Status
Niet open voor verdere reacties.

BitBang

Gebruiker
Lid geworden
27 dec 2014
Berichten
13
Goede avond,

In een programma wil ik een lookup table maken en de data die hierin staat vergelijken met data uit een textbox tijdens een TextChanged event.
Ik zou dit willen doen zoals op onderstaande manier, het wil zo alleen niet lukken.

Iemand suggesties hoe ik dit werkend krijg??

Code:
Public Class Form1
     Dim bit0() As Byte = {1, 3, 5, 7, 9, 11}

Code:
 Private Sub txtbox1_TextChanged(sender As Object, e As EventArgs) Handles txtbox1.TextChanged
         If txtbox1.Text = bit0() Then
            btn0Off.Enabled = True
            btn0On.Enabled = False
            btn0On.BackColor = Color.DimGray
            btn0Off.BackColor = Color.DarkRed
         elseif not txtbox1.Text = bit0() Then
            btn0Off.Enabled = False
            btn0On.Enabled = True
            btn0On.BackColor = Color.LightGreen
            btn0Off.BackColor = Color.DimGray
        end if
end sub
 
Je maakt een array en gebruikt deze vervolgens zonder index. Dat zou al een foutmelding op moeten leveren. Tevens is je ElseIf overbodig.
Je wil die button aanpassen als de waarde van txtbox1 gelijk is aan 1 van de waarden in de array?

Doe het dan eens zo:
Code:
Private Sub txtbox1_TextChanged(sender As Object, e As EventArgs) Handles txtbox1.TextChanged
    If bit0.Contains(TxtBox1.Text) Then
        btn0Off.Enabled = True
        btn0On.Enabled = False
        btn0On.BackColor = Color.DimGray
        btn0Off.BackColor = Color.DarkRed
    Else
        btn0Off.Enabled = False
        btn0On.Enabled = True
        btn0On.BackColor = Color.LightGreen
        btn0Off.BackColor = Color.DimGray
    End If
End Sub
 
Laatst bewerkt:
Ik heb 8 on en 8 off buttons, afhankelijk van de stand van de buttons veranderd de text in de textbox. Hiernaast veranderd de stand van de buttons als de text in een textbox veranderd. (in totaal heb ik 256 textboxes). Als een button on is bediend wordt deze uitgeschakeld, en kan de hierbij behorende button off wel bediend worden. En vise versa.

Ik wil dus 8 arrays die ik vanuit het hele programma kan benaderen met hierin vaste waarden. Die arrays bevatten tot 128 waarden.

Ik krijg nu:

Code:
Public Class Form1
       Dim bits0() As Byte = {1, 3, 5, 7,.....}

Code:
 Private Sub txtbox1_TextChanged(sender As Object, e As EventArgs) Handles txtbox1.TextChanged

        If bits0.Contains(txtbox1.Text) Then
            btn0Off.Enabled = True
            btn0On.Enabled = False
            btn0On.BackColor = Color.DimGray
            btn0Off.BackColor = Color.DarkRed
        ElseIf Not bits0.Contains(txtbox1.Text) Then
            btn0Off.Enabled = False
            btn0On.Enabled = True
            btn0On.BackColor = Color.LightGreen
            btn0Off.BackColor = Color.DimGray
        End If

Het werkt nu zoals ik wil :)
Thx
 
Laatst bewerkt:
Waarom heb je de declaratie van de de array gewijzigd?
Dat was dit:
Dim bit0() As Byte = {1, 3, 5, 7, 9, 11}

En dat was goed.
 
Sorry.. ik had het net verkeerd aangepast, terwijl je aan het typen was.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan