Delphi 获取 Label 控件里面文字的 Width 宽度

(KK_DDj 原创)

有时,我们需要根据 label 控件里面的文字宽度来考虑是否需要换行,既然换行,也需要调整 label 控件的高度以便于显示换行的内容。

  • 获取 label 里面 文字的宽度:
    Label1.Canvas.TextWidth(Label1.Caption);
  • 设置 label 控件换行(必须设置这样):
    Label1.AutoSize := False;
    Label1.WordWrap := True;
  • 若当前的 Label 控件高度为 10,则在 Label 控件文字宽度超过自身控件宽度时,需要设置 Label 控件高度为之前的 2 倍,即是 20。
  • 代码如下:
    //文字宽度大于自身控件宽度,且已经设置了自动换行时
    if Label1.Canvas.TextWidth(Label1.Caption) > Label1.Width then
    begin
    Label1.Width := Label1.Width * 2;
    end;

注 : 这只是一个简单的对于显示不同语言的处理方法。
(若是有不对的或者更好的建议,可以留言给我的哈,请多多指教)

猜你喜欢

转载自blog.csdn.net/qq_23044209/article/details/77368730
今日推荐