theiNaD

Neue Zeile in Strings bei Delphi

Heute stand ich vor dem Problem, wie man in einen String eine neue Zeile einfügt bzw. wusste ich den Character dafür nicht. Allerdings hat Delphi selber eine Variable definiert, in welcher der entsprechende ANSI Code geschrieben wird.
Die Variable heißt sLineBreak und ist ganz einfach zu nutzen. Ein kleines Beispiel:

ShowMessage('Dies ist eine Messagebox mit'+sLineBreak+'einer neuen Zeile!');

sLineBreak hat zudem den Vorteil, dass es unter Linux den AnsiChar(#10) nutzt und unter Windows AnsiString(#13#10). Es ist zwar theoretisch gesehen egal, allerdings ist diese Variante portierungsfreundlicher, wenn man z.B. mit Lazarus arbeitet.

Ich hoffe ich konnte einigen von euch weiterhelfen.

Grüße iNaD

Kategorien: Delphi/Pascal, Tipps & Tricks

I’m not dead! » « Neues Design

2 Kommentarer

  1. Hallo,

    Zeilenumbruch mit Delphi geht so:

    #13#10

    also Bsp:

    ShowMessage(‚Erste Zeile’+#13#10+’Zweite Zeile‘);

    • iNaD

      17. März 2010 — 21:36

      Es macht aber keinen Unterschied ob man sLineBreak nutzt oder #13#10.
      sLineBreak hat den Vorteil, dass es auch unter Linux funktioniert, wenn man zum Beispiel mit Lazarus arbeitet.
      Denn unter Linux ist es AnsiChar(#10) und unter Windows AnsiChar(#13#10).
      Das hätte ich villeicht noch erwähnen sollen, dass Delphi dort eine OS Unterscheidung macht.

      Also kann man nicht sagen, dass es so oder so gemacht wird. Allerdings finde ich die sLineBreak Variante nicht wirklich schlechter da Delphi diese auch vervollständigen kann #13#10 hingegen nicht. Wenn man #13#10 in eine Variable „packt“ um dies zu erhalten, dann wäre diese überflüssig, da es ja sLineBreak gibt.
      Ist halt Geschmackssache 😉

      Grüße iNaD

Kommentar verfassen

Copyright © 2017 theiNaD

Design von Anders NorenHoch ↑