{以下方法实现后会有蓝条闪过,如果想保留蓝条把LISTBOX的STYLE属性设置成
lbOwnerDrawFixed就可以了}
procedure TForm1.ListBox1Click(Sender: TObject);
var
rec:TRect;
val:String;
count:Integer;
begin
for count:=0 to listbox1.Items.Count-1 do begin
if ListBox1.Selected[count] then begin
rec:= ListBox1.ItemRect(count);//获得区域
val:=ListBox1.Items[count];//获得文本
ListBox1.Canvas.Font.Color := clRed;//这里指定颜色
ListBox1.Canvas.TextRect(rec,rec.Left + 2,rec.Top,val);//重新画
end;{end if}
end;{end for}
end;{en procedure}