Labelで指定した文字数以上を表示させなくするには


なな  2007-02-03 23:37:02  No: 24770

はじめましてです。

Labelでの文字表示で質問があるのですが
ラベル上で指定した文字数以上が表示される時
オーバーした分の文字だけを「・・」で表示させたいのですが
すみません、分かる方いらっしゃいますか。


まこと  2007-02-04 01:55:06  No: 24771

ラベルに文字を表示するのはどのタイミングなのでしょうか。
そのタイミングで以下のようにすればよいと思いますが。

//10は適当な数字です。
if Length(Label1.Caption) > 10 then
  Label1.Caption := Copy(Label1.Caption, 1, 10) + '...';

バイト数でなく文字数でカウントしたいならWideStringを
使うと可能です。


deldel  2007-02-06 18:06:44  No: 24772

ファイル名ならこんなのありますけど。
Label1.Caption := MinimizeName('C:\Program Files\Borland\Delphi5\Demos\Activex\Oleauto\SrvComp\Word\pwordcomp.dpr', Label1.Canvas, Label1.Width);
ちょっと違いますけど。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加