Einzelnen Beitrag anzeigen

venice2
(Gast)

n/a Beiträge
 
#2

AW: Richtige Text länge ist nicht berechenbar

  Alt 11. Nov 2020, 21:45
Auch das funktioniert nicht.

Delphi-Quellcode:
function GetEllipsis(s: string; R: TRect; DC:HDC): string;
begin
  Result := S;
  UniqueString(Result);

  R := Rect(1, 1, r.Right, 20);
  DrawTextEx(DC, PWideChar(Result), Length(Result), R, DT_CALCRECT or
    DT_END_ELLIPSIS or DT_MODIFYSTRING, nil);
  SetLength(Result, StrLen(PWideChar(Result)));
end;
oder.

Delphi-Quellcode:
function GetTextWidth(fnt: TFont; const text:string): Integer;
var
   dc: hdc;
   tsize : Windows.TSize;
begin
   dc := GetDC(0);
   SelectObject(DC, fnt.Handle);
   GetTextExtentPoint32(dc, PWideChar(text), Length(text), tsize);
   ReleaseDC(0, DC);
   Result := tsize.cx;
end;
frustrierend.

EDIT:
kümmert euch nicht mehr drum habe es selbst geregelt.

Geändert von venice2 (12. Nov 2020 um 02:01 Uhr)
  Mit Zitat antworten Zitat