Einzelnen Beitrag anzeigen

Benutzerbild von jaenicke
jaenicke
Online

Registriert seit: 10. Jun 2003
Ort: Berlin
9.855 Beiträge
 
Delphi 12 Athens
 
#11

Re: Pathname kürtzen ohne MinimizeName aus Unit FileCtrl

  Alt 9. Aug 2009, 18:34
Zitat von turboPASCAL:
Nur, ich muss halt selber ran.
Die paar Sekunden habe ich dann doch grad mal.
Delphi-Quellcode:
function MinimizeName(const Filename: string; DC: HDC; MaxLen: Integer): string;
var
  b: array [0..MAX_PATH] of Char;
  R: TRect;
  TextSize: TSize;
begin
  StrCopy(b, PChar(Filename));
  GetTextExtentPoint32(DC, PChar(FileName), Length(FileName), TextSize);
  R := Rect(0, 0, MaxLen, TextSize.cy);
  if DrawText(DC, b, Length(Filename), R,
    DT_SINGLELINE or DT_MODIFYSTRING or DT_PATH_ELLIPSIS or DT_CALCRECT or DT_NOPREFIX) > 0 then
    Result := b
  else
    Result := Filename;
end;
// EDIT:
Wobei man für die Höhe ggf. wie im Beispiel auch nur etwas Kurzes statt des gesamten Dateinamens als schnelleren Ersatz nehmen kann.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat