(Co-Admin)
Registriert seit: 29. Mai 2002
Ort: Hamburg
11.119 Beiträge
Delphi 11 Alexandria
|
Re: alle Strings aus Edit.Text in der ListBox farbig darstel
7. Sep 2006, 01:00
Moin Holger,
wenn ich es so mache
Delphi-Quellcode:
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
const
_aclFont : array [boolean] of TColor = (clBlack,clRed);
var
lb : TListBox;
sLine : string;
sOut : string;
iPos : integer;
iLeft : integer;
begin
lb := Control as TListBox;
sLine := lb.Items[Index];
iLeft := Rect.Left;
while length(sLine) > 0 do begin
iPos := pos(Edit2.Text,sLine);
case iPos of
0 : begin
sOut := sLine;
sLine := '';
end;
1 : begin
sOut := copy(sLine,1,length(Edit2.Text));
sLine := copy(sLine,length(Edit2.Text)+1,MaxInt);
end;
else begin
sOut := copy(sLine,1,iPos-1);
sLine := copy(sLine,iPos,MaxInt);
end;
end;
lb.Canvas.Font.Color := _aclFont[iPos=1];
lb.Canvas.TextOut(iLeft,Rect.Top,sOut);
iLeft := lb.Canvas.PenPos.X;
end;
end;
wird alles, was sich in Edit2 befindet, und in der auszugebenden ListBoxzeile steht rot geschrieben
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
|
|
Zitat
|