是否定义了Delphi TLabel标题中制表符的行为?

时间:2011-10-25 02:48:28

标签: delphi caption control-characters tlabel

如果我将制表符放入字符串然后从字符串中分配标签的Caption属性,那么制表符会做什么?

CR字符会导致返回,这对于显示多行标题很有用。 Tab字符确实似乎执行某种标签操作 - 我想知道这种行为是否已定义或可预测。 (我猜这种行为是由Windows而不是Delphi决定的。)

1 个答案:

答案 0 :(得分:4)

如果您将标签字符放在TLabel.Caption中,则Caption包含标签字符。

选项卡字符的显示方式取决于您使用的字体和Windows本身。例如,在X7上的快速测试,在Win7上显示适合制表符的间距(大约8个空格,非比例字体)。

这是我的测试。在表单上删除三个标签,并将其添加到表单的OnCreate事件:

procedure TForm1.FormCreate(Sender: TObject);
begin
  Label2.Left := Label1.Left;
  Label3.Left := Label2.Left;
  Label1.Caption := 'Some text'#9'Some text'#9'More text';
  Label2.Caption := Label1.Caption;
  Label3.Caption := Label1.Caption;
end;

这是输出:

Sample label output