Txt wird bei Ausgabe nicht vollständig angezeigt

  • Hey,

    Ich muss eine txt Datei (mehrere Zeilen) auslesen und in einer gui anzeigen lassen. Mir wird allerdings nur die erste Zeile der txt angezeigt.


    GUI Erstellung...


    Local $file = FileOpen("test.txt",0)

    Local $line = FileReadLine($file)

    Local $idAusgabe = GUICtrlCreateLabel($line & @CRLF, 25, 130, 250, 25)

    GUISetState(@SW_SHOW)

    Send("{END}")


    So sieht mein Programm aus. Kann mir da vielleicht jemand weiterhelfen?

    Danke schonmal im Vorraus!

  • Mit Local $line = FileReadLine($file) ließt du natürlich nur die erste Zeile aus.


    Das musst du schon per Schleife lösen, wobei ich den Weg über ein Array bevorzuge, da es diverse einfachere Lösungen gibt.


    AutoIt
    Local $File, $String, $idAusgabe
      _Filereadtoarray('test.txt', $File, $FRTA_NOCOUNT) ;Wenn du eine Schleife benutzst, empfehle ich anstatt $FRTA_NOCOUNT folgendes: $FRTA_COUNT
      ;For $Row = 1 to $File[0]
      ;  $String &= $File[$Row] & @CRLF
      ;Next
    
      $String = _ArrayToString($File, @CRLF)
      ;$idAusgabe = GUICtrlCreateLabel($String, 25, 130, 250, 25) ;Ich denke das LAbel wäre dafür zu klein daher hier die Testausgabe:
      MsgBox(1, 'Test', $String)
  • Hallo!


    Das Label ist wahrscheinlich auch zu klein mit einer Höhe von 25...


    Tipp: Ich lasse mir Texte immer zuerst in der Console ausgeben und dann passe dann die Label an.


    lg

    Harald

  • Miniscript:

    Code
    $gui=guicreate("")
    $label=GUICtrlCreateLabel("",5,5,300,300)
    $text=fileread(@ScriptName)
    GUICtrlSetData($label,$text)
    guisetstate()
    sleep(5000)