Определено ли поведение символа табуляции в заголовке Delphi TLabel? - PullRequest
1 голос
/ 25 октября 2011

Если я помещаю символы табуляции в строку, а затем назначаю свойство Caption метки из строки, что делают символы табуляции?

Символы CR вызывают возврат, что полезно для отображения многострочного заголовка. Символы табуляции действительно выполняют какое-то действие табуляции - мне интересно, определено ли это поведение или предсказуемо. (Я предполагаю, что поведение определяется Windows, а не Delphi).

1 Ответ

4 голосов
/ 25 октября 2011

Если вы поместите символы табуляции в TLabel.Caption, Caption содержит символы табуляции.

Способ отображения символа вкладки зависит от используемого вами шрифта и самой Windows. Быстрый тест в XE, например, на 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

...