Форум: "Основная";
Текущий архив: 2005.09.25;
Скачать: [xml.tar.bz2];
ВнизСтроки в ListBox разными цветами Найти похожие ветки
← →
kyn66 © (2005-08-29 16:30) [0]Пытаюсь нарисовать в листбоксе строки разными цветами таким образом:
Listbox1.Items.AddObject(Edit1.Text, Pointer(StrToInt(Edit2.Text)));
ListBox1.Perform(LB_SETTOPINDEX, Pred(ListBox1.Items.Count), 0);
procedure TMainFrm.ListBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
var
l: Integer;
t: String;
begin
with ListBox1 do
begin
if Integer(Items.Objects[Index]) = 1 then
Font.Color := clRed
else
Font.Color := clBlack;
Canvas.FillRect(Rect);
t := Items[Index];
l := Rect.Right - Canvas.TextWidth(t) - 1;
Canvas.TextOut(l, Rect.Top, t);
end;
end;
При добавлении итемов, они начинают мерцать как гирлянда, что это такоеможет быть?
Не знаю, ешшо добавлено это, но оно наверное не причем:
procedure TMainFrm.FormResize(Sender: TObject);
begin
ListBox1.Repaint;
end;
← →
begin...end © (2005-08-29 16:37) [1]> kyn66 © (29.08.05 16:30)
> При добавлении итемов, они начинают мерцать как гирлянда
Они в цикле добавляются, что ли? И LB_SETTOPINDEX -- тоже в цикле?
← →
Pearled © (2005-08-29 16:39) [2]вместо этого
Font.Color := clRed
else
Font.Color := clBlack;
напиши
Canvas.Font.Color := clRed
else
Canvas.Font.Color := clBlack;
← →
kyn66 © (2005-08-29 17:01) [3]>> Да ! Canvas.Font.Color помогло ! А что это было?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.09.25;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.045 c