Hej!!
Jeg sad lige og tænkte på om det mon kunne lade sig gøre at måle længden på en string ud i pixels!!
Hvis det kan hvordan gøres det så??
/Mads
Hej
Du kan bruge GDI til at beregne størrelsen af din tekst vha. af funktionen "DrawText".
[pre]
function StrBounds(AText : String; ACanvas : TCanvas) : TRect;
var
Old : HGDIOBJ;
PC : PChar;
L : Integer;
R : TRect;
begin
Old := SelectObject(ACanvas.Handle, ACanvas.Font.Handle);
PC := PChar(AText);
L := StrLen(PC);
R := Rect(1,1,1024,768);
Windows.DrawText(ACanvas.Handle, PC, L, R, DT_CALCRECT+DT_SINGLELINE+DT_NOPREFIX);
SelectObject(ACanvas.Handle, Old);
Result := R;
end;
[pre]
Kig på hjælpen til DrawText for at finde de andre DT konstanter som du kan bruge.
Du kan også bruge TCanvas.TextWidth og TCanvas.TextHeight.
/Michael.