Registriert seit: 6. Apr 2005
10.109 Beiträge
|
Re: Memo Zeilenanzahl begrenzen
11. Mär 2006, 09:17
Hallo Stefan,
ich würde so vorgehen:
Delphi-Quellcode:
function TextIsFitting( const text: String; c: TCanvas): Boolean;
var
r: TRect;
begin
with c do
begin
r := ClipRect;
DrawText( Handle, PAnsiChar(text), Length(text), r,
// zum Anpassen schau in den Win32 SDK unter DrawText
DT_CALCRECT + DT_LEFT + DT_WORDBREAK
);
Result := r.Bottom <= ClipRect.Bottom;
end;
end;
procedure TDemoForm.MemoChange(Sender: TObject);
begin
if TextIsFitting(Memo.Text, MultiLineLabel.Canvas)
then Memo.Font.Color := clBlack
else Memo.Font.Color := clRed;
end;
Grüße vom marabu
|
|
Zitat
|