Ergebnis 1 bis 6 von 6

Auf einzelne Zeilen zugreifen in VB

  1. #1 Zitieren
    Veteran Avatar von orcjäger
    Registriert seit
    Jan 2005
    Ort
    Österreich
    Beiträge
    686
    Hallo ich bin beschäftige mich grade mit Visual Basic. (kann noch nicht viel)
    Ich benutzte Visual Studio 2005.

    Ich will etwas in eine bestimmte Zeile in einer TextBox schreiben lassen.

    Ich habe das folgendermaßen versucht:
    Code:
            Dim Zeilen() As String
            Zeilen = Outputfield.Lines
            Zeilen(3) = "Hallo!"
    Outputfield ist der Name der Textbox.
    Sie ist auf Multiline eingestellt.

    Ich bekomme immer eine "IndexoutofRangeexception".

    Ich hoffe mir kann jemand helfen.
    orcjäger ist offline

  2. #2 Zitieren
    Provinzheld Avatar von Fred Froschfurz
    Registriert seit
    Oct 2006
    Ort
    using System.Windows.Forms.Design.Behavior
    Beiträge
    269
    Code:
            Dim Zeilen(3) As String
            Zeilen(2) = "Hallo!"
            Outputfield.Lines = Zeilen
    sollte funktionieren.

    Deine Fehler:
    1. du musst zuerst den wert der Variable zuweisen und dann die der textbox.
    2. arrays fangen bei 0 an nicht bei 1 (zumindest bei c# bei vb glaub ich aber auch)
    3. Zuweisungsfehler outputlines = Zeilen

    versuch mal folgenden code:

    Code:
    Outputfield.text = "\n\n\nHello World"
    \n steht für eine neue zeile (zumindest bei c#)
    Fred Froschfurz ist offline

  3. #3 Zitieren
    Veteran Avatar von orcjäger
    Registriert seit
    Jan 2005
    Ort
    Österreich
    Beiträge
    686
    So funktioniert das schon mal ganz gut.
    Ich will nen Art Script generator für Gothic schreiben.

    Ich habe 4 Checkboxen und je nachdem welche angehakt sind soll verschiedener Text generiert werden. Ich hab mir gedacht es ist wohl das einfachste wenn ich nur die einzelnen Zeilen verändere (da der Code fast überall gleich ist).

    Der generierte Code wird jetzt mit leerzeilen und halt dem gewünschten text (hier mal zu testzwecken hallo) überschrieben.
    Das heißt es steht nur noch hallo dort (und eben einige Leerzeilen).
    Ich brauche aber den Vorher generierten code UND das Hallo.

    Code:
            Outputfield.Text = alles
    'alles ist ne string variable in der der Generierte Code steht.
            Outputfield.Lines = Zeilen
    'durch das wird alles gelöscht und Zeilen in die Textbox geschrieben
    kann mir jemand helfen?
    orcjäger ist offline

  4. #4 Zitieren
    Provinzheld Avatar von Fred Froschfurz
    Registriert seit
    Oct 2006
    Ort
    using System.Windows.Forms.Design.Behavior
    Beiträge
    269
    entweder liegt das an meinem bierkonsum ... hmm weil ich kapier nicht was du willst ich hab das so verstande:

    du hast checkboxen.
    jenachdem wenn eine angeklickt wird wird eine textzeile geschrieben. ist sie nicht angeclickt eine leerzeile.
    und die textbox hast du als ausgabemedium für den generierten text.

    was soll aber das hallo ?

    auf schlauch steh..

    Edit: oder soll in der textbox der eingangscode stehen ??
    Fred Froschfurz ist offline Geändert von Fred Froschfurz (13.02.2007 um 21:25 Uhr)

  5. #5 Zitieren
    Veteran Avatar von orcjäger
    Registriert seit
    Jan 2005
    Ort
    Österreich
    Beiträge
    686
    Hier mal ein Screenshot.

    Beim Klick auf "Generieren" werden alle Infos aus den verschiedenen TextBoxen in eine große Variable geschrieben.

    Dies Variable wird dann im outputfield ausgegeben und der generierte Code steht für ne Milisekunde dort, wird aber sofort durch die leerzeilen und das hallo in der gewählten zeile überschrieben.

    Der Code soll natürlich dortstehen bleiben, und nicht durch leerzeilen ersetzt werden.
    orcjäger ist offline

  6. #6 Zitieren
    Provinzheld Avatar von Fred Froschfurz
    Registriert seit
    Oct 2006
    Ort
    using System.Windows.Forms.Design.Behavior
    Beiträge
    269
    hmm ist zwar -wenn ich es richtig verstanden hab umständlich aber proboiers mal in der art:
    (Wichtig hab den Syntax nicht getestet)

    Code:
    Dim zeilen () As String
    zeilen = outputtext.Zeilen
    zeilen(x) = "Hallo"
    outputtext.zeilen = zeilen
    wenn ich falsch liege poste mal deinen sourcecode, weil ich hab immer noch nicht genau (sorry steh absolut auf dem schlauch) einen plan was du machen willst, und wofür die große Variable am anfang sein soll.....
    Fred Froschfurz ist offline

Berechtigungen

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