RichtextBox mit Array vergleichen und sortieren

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von Biotechniker.

    RichtextBox mit Array vergleichen und sortieren

    Hey Leute,

    wie schon vorher gesagt kann ich kein Thema erstellen! Deshgalb schreibe ich hier weiter.

    Frage:

    Also ich möchte aus der RichtextBox1 heraus lesen ob sie eine zahl beinhaltet die im Array "AlleFragen" steht. Ich sontiere heraus welche es gibt und welche nicht!
    Am ende des Prozesses lese ich aus welche der Zalen aus der RichtextBox nicht im Array stecken.
    Ich habe mich schon mal bemüde den code zuschreibe als könntet ihr mal drüber schauen?

    VB.NET-Quellcode

    1. Dim War As Boolean = False
    2. Dim Zahl As Integer = 0
    3. Dim Besteht As String() = Nothing
    4. Dim Nichtbesteht As String() = Nothing
    5. Select Case Button1.Text
    6. Case "Start"
    7. If My.Settings.automatisch = True Then
    8. Button1.Text = "Abbruch"
    9. Fragestellen()
    10. Else
    11. Dim Text As String() = RichTextBox1.Text.Split(",")
    12. Dim erstZahl As Integer = Nothing
    13. If RichTextBox1.Text = "" Then
    14. Label1.Text = "Bitte wählen sie erst welche Fragen sie haben möchten. Es stehen " _
    15. + AlleFragen.Length.ToString + " zu verfügung."
    16. Else
    17. While War = False
    18. For Richzahlen As Integer = 0 To Text.Length 'Die Zahlenanzahl ín der RichTextBox
    19. For FrageZeilen As Integer = 0 To AlleFragen.Length 'Die Zeilenanzahl der gesamten Fragen
    20. If Text(Richzahlen) = AlleFragen(FrageZeilen) Then Besteht(Besteht.Length) = Text(Richzahlen) _
    21. Else If FrageZeilen = AlleFragen.Length Then Nichtbesteht(Nichtbesteht.Length) = Text(Richzahlen)
    22. Next
    23. Next
    24. If Nichtbesteht(0) = "" Then
    25. War = True
    26. Button1.Text = "Abbruch"
    27. Fragestellen()
    28. Else
    29. Dim Textlabel As String = ""
    30. For f As Integer = 0 To Nichtbesteht.Length - 1
    31. Textlabel = Textlabel + "," + Nichtbesteht(f)
    32. Next
    33. Label1.Text = Textlabel
    34. War = True
    35. End If
    36. End While
    37. End If
    38. End If
    39. Radiobutton_off()
    40. Return
    41. Case ...
    42. ...



    Hier nochmal der ganze Code

    VB.NET-Quellcode

    1. Dim AlleFragen() As String = IO.File.ReadAllLines("Fragen.txt")
    2. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    3. Dim War As Boolean = False
    4. Dim Zahl As Integer = 0
    5. Dim Besteht As String() = Nothing
    6. Dim Nichtbesteht As String() = Nothing
    7. Select Case Button1.Text
    8. Case "Start"
    9. If My.Settings.automatisch = True Then
    10. Button1.Text = "Abbruch"
    11. Fragestellen()
    12. Else
    13. Dim Text As String() = RichTextBox1.Text.Split(",")
    14. Dim erstZahl As Integer = Nothing
    15. If RichTextBox1.Text = "" Then
    16. Label1.Text = "Bitte wählen sie erst welche Fragen sie haben möchten. Es stehen " _
    17. + AlleFragen.Length.ToString + " zu verfügung."
    18. Else
    19. While War = False
    20. For Richzahlen As Integer = 0 To Text.Length 'Die Zahlenanzahl ín der RichTextBox
    21. For FrageZeilen As Integer = 0 To AlleFragen.Length 'Die Zeilenanzahl der gesamten Fragen
    22. If Text(Richzahlen) = AlleFragen(FrageZeilen) Then Besteht(Besteht.Length) = Text(Richzahlen) _
    23. Else If FrageZeilen = AlleFragen.Length Then Nichtbesteht(Nichtbesteht.Length) = Text(Richzahlen)
    24. Next
    25. Next
    26. If Nichtbesteht(0) = "" Then
    27. War = True
    28. Button1.Text = "Abbruch"
    29. Fragestellen()
    30. Else
    31. Dim Textlabel As String = ""
    32. For f As Integer = 0 To Nichtbesteht.Length - 1
    33. Textlabel = Textlabel + "," + Nichtbesteht(f)
    34. Next
    35. Label1.Text = Textlabel
    36. War = True
    37. End If
    38. End While
    39. End If
    40. End If
    41. Radiobutton_off()
    42. Return
    43. Case "Abbruch"
    44. Button1.Text = "Start"
    45. Radiobutton_on()
    46. System_desgin()
    47. Gesamt += 1
    48. Return
    49. Case "Fertig"
    50. If RadioButton1.Checked = False And RadioButton2.Checked = False And RadioButton3.Checked = False Then
    51. Label1.Text = "Bitte wählen sie erst eine Antwort zur Frage, bevor sie bestätigen" _
    52. & vbCrLf & "Die Frage kommt in " + KATakt.ToString + " Sekunden wieder"
    53. KAZeit = System.DateTime.Now
    54. KAON = True
    55. Return
    56. End If
    57. Button1.Text = "Weiter"
    58. Fragebeantworten()
    59. Radiobutton_on()
    60. Return
    61. Case "Weiter"
    62. Button1.Text = "Fertig"
    63. Radiobutton_off()
    64. Fragestellen()
    65. Return
    66. End Select
    67. End Sub


    Verschoben. MfG gs93

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

    In einem Array sind Items. Also das sind die Einträge die du machst. Du schreibst ja den Text deiner Textbox in die Arrays und teilst sie nach jedem Komme. dadurch würd für jede Frage ein Item erzeugt. Mit count kann man diese zählen und mit Text(1) bekommst du das Item mit dem Index1. Du musst nur aufpassen da der erste index 0 ist dann kommt 1, 2, 3 usw
    So wie es in deinem Code ausschaut willst du jede Frage überprüfen ob diese in dem Array ist. Mit length hast du die anzahl der Zeichen. So oft wird deine Schleife durchlaufen. Mit count bekommst du die Anzahl der Fragen da du jede Frage in ein Item schriebst.
    ist das net das gleiche?

    ach^^ length würde bei diesem beispiele auf 12 stehen und count auf 10 oder wie?
    1. Item: 0
    2. Item:12
    3. Item:6
    4. Item:8
    5. Item:1
    6. Item:2
    7. Item:9
    8. Item:21
    9. Item:5
    10. Item:4
    //Edit
    ich habs jetzt getest und irgentwie kommt da immer 10 raus, aslo was bringt mir dass?
    //Edit
    So ich habs ihn bekommen! Also und was mache ich jetzt hier wie in diesem Bild?
    Bilder
    • Bild2.JPG

      47,53 kB, 708×372, 145 mal angesehen

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Biotechniker“ () aus folgendem Grund: 1. Ideensprung 2. Ideensprung geprüft 3. Bild hochgeladen für ne Fehlermeldung in code