Mam's WebSite
建築CGパース住宅CGパース

Mamの覚書Q&A検索

トップページMamの覚書Q&A検索Delphi(いろいろ)⇒Q&A


大項目:「 Delphi 」 - 中項目:「 いろいろ 」

「 長いフォルダ名やファイル名を省略して、途中で「...」表示するには? 」

フルパスでファイル名を表示する場合に途中で「...」表現をして表示するにはどうすればいいか。


回答

MinimizeName関数を使えば可能です。
UsesにFilectrlを追加すると使えます。
 
function MinimizeName(const Filename: TFileName; Canvas: TCanvas; MaxLen: Integer): 
 
Filename:短縮する必要のあるフルパスファイル名
Canvas:描画領域のTCanvas
MaxLen:ファイル名を描画する領域の長さ(ピクセル単位)

ソース

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Filectrl;
 
・・・
・・・
 
procedure TForm1.Button1Click(Sender: TObject);
begin
  Edit1.Text:=MinimizeName('c:\abcdefghijklmno\a.txt',Canvas,Edit1.Width);
end;


Mam's WebSite