如何知道Label字是否包装文本?

问题描述 投票:2回答:1

我创建了一个TLabel并动态添加文本,这很好用。但是我需要知道标签是否包装了文本,因为它对于标签的宽度来说太大了,或者因为文本比标签的宽度短而无需包装。

我不是要知道标签的WordWrap属性是设置为true还是false,我想知道它是否包装了文本或者它没有。

如果重要的话,TLabelAutoSizeWordWrap属性设置为true。

delphi textwrapping tlabel
1个回答
7
投票

您可以检查标签的高度,以确定它是否是一个衬垫。

if Label1.Height = Label1.Canvas.TextHeight('.') then
  // no word wrapped

That is because

当WordWrap为True时,标签的宽度是固定的。如果AutoSize也为True,则对文本的更改会导致标签的高度发生变化。

© www.soinside.com 2019 - 2024. All rights reserved.