我怎么知道标签字是否换行?

How can I know if a TLabel word wrapped the text?

我创建了一个 TLabel 并向其中动态添加文本,效果很好。但是我需要知道标签是否将文本换行是因为它对于标签的宽度来说太大了,或者是否不需要它换行是因为文本比标签的宽度短。

我不是想知道标签的 WordWrap 属性 设置为 true 还是 false,我想知道它是否包裹了文字。

TLabelAutoSizeWordWrap 属性设置为 true,以防万一。

您可以查看标签的高度来确定它是否是单行的。

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

That is because:

When WordWrap is True, the width of the label is fixed. If AutoSize is also True, changes to the text cause the label to change in height.