German IndexOf Problem

so27

Active Member
Licensed User
Longtime User
Hallo zusammen,

ich habe einen String, welcher wie folgt aufgeteilt ist:
morgens / mittags / abends / nachts / bei Bedarf

Der Inhalt kann variieren z. B.:
morgens/nachts

Je nachdem was der User ausgewählt hat.

Nun möchte ich, dass wenn ich einen Button drücke, der String auf die Wörter "morgens", "mittags", "abends", "nachts" und "bei Bedarf" durchsucht wird. Wenn ein Wort gefunden wird, soll eine Checkbox ein Häkchen bekommen.

B4X:
    If lblDarreichung.Text.Length > 0 Then
        Log("Text gefunden")
        If lblDarreichung.text.IndexOf("morgens") = 0 Then chkMorgens.Checked = True
        If lblDarreichung.text.IndexOf("mittags") = 0 Then chkMittags.Checked = True
        If lblDarreichung.text.IndexOf("abends") = 0 Then chkAbends.Checked = True
        If lblDarreichung.text.IndexOf("nachts") = 0 Then chkNachts.Checked = True
        If lblDarreichung.text.IndexOf("bei Bedarf") = 0 Then chkBedarf.Checked = True

    End If
 
Last edited:

so27

Active Member
Licensed User
Longtime User
Oh ja, zu viel Code gesehen und natürlich muss da kein IndexOf sondern ein Contains rein. Sorry, wie war das mit dem Wald und den Bäumen.:eek:

B4X:
    If lblDarreichung.Text.Length > 0 Then
        Log("Text gefunden")
        If lblDarreichung.text.Contains("morgens") = True Then chkMorgens.Checked = True
        If lblDarreichung.text.Contains("mittags") = True Then chkMittags.Checked = True
        If lblDarreichung.text.Contains("abends") = True Then chkAbends.Checked = True
        If lblDarreichung.text.Contains("nachts") = True Then chkNachts.Checked = True
        If lblDarreichung.text.Contains("bei Bedarf") = True Then chkBedarf.Checked = True

    End If
 

MarkusR

Well-Known Member
Licensed User
Longtime User
wäre das nicht kürzer?
B4X:
chkMorgens.Checked = lblDarreichung.text.Contains("morgens")
 

DonManfred

Expert
Licensed User
Longtime User
If lblDarreichung.text.IndexOf("morgens") = 0 Then chkMorgens.Checked = True
B4X:
If lblDarreichung.text.IndexOf("morgens") > -1 Then chkMorgens.Checked = True ' WENN text enthalten dann checkbox setzen.
 
Top