当前位置:  开发笔记 > 运维 > 正文

如何在Delphi中的字符串中包含换行符?

如何解决《如何在Delphi中的字符串中包含换行符?》经验,为你挑选了5个好方法。

我想创建一个跨越多行的字符串,以分配给Label Caption属性.这是如何在Delphi中完成的?



1> Jim McKeeth..:

在System.pas(自动使用)中定义了以下内容:

const
  sLineBreak = {$IFDEF LINUX} AnsiChar(#10) {$ENDIF} 
               {$IFDEF MSWINDOWS} AnsiString(#13#10) {$ENDIF};

这是来自Delphi 2009(注意使用AnsiChar和AnsiString).(我添加了换行.)

因此,如果要进行TLabel换行,请确保将AutoSize设置为true,然后使用以下代码:

label1.Caption := 'Line one'+sLineBreak+'Line two';

自从引入sLineBreak以来,所有版本的Delphi都可以使用,我相信它是Delphi 6.


感谢那!我一直用#13#10.
哇,这比我期望的要好得多!

2> Zartog..:

这是一个更短的方法:

my_string := 'Hello,'#13#10' world!';



3> Brendan..:

my_string := 'Hello,' + #13#10 + 'world!';

#13#10 是十进制的CR/LF字符



4> skamradt..:

或者您也可以使用^ M + ^ J快捷方式.所有的偏好问题."CTRL-CHAR"代码由编译器翻译.

MyString := 'Hello,' + ^M + ^J + 'world!';

你可以在^ M和^ J之间取+,但是你会得到编译器的警告(但它仍然可以正常编译).



5> François..:

另一方面,一个有用的技巧:
如果在TStrings中保存多个字符串,则只需使用TStrings的Text属性,如下例所示.

Label1.Caption := Memo1.Lines.Text;

你会得到你的多线标签......

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有