Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.12.28;
Скачать: CL | DM;

Вниз

Отрисовка ellipce в ListBox   Найти похожие ветки 

 
Scot Storch   (2008-11-18 12:51) [0]

Необходимо для каждого item"a ListBox"а слева от текста нарисовать круг закрашеный определенным цветом.

Делаю так, но закрашивается вся область с текстом:


procedure Tform_Main.list_ResultDrawItem(ListBox: TCustomListBox_;
 Canvas: TCanvas; Index: Integer; var Rect: TRect; State: TOwnerDrawState;
 var Done: Boolean);
begin
 with Rect do
 begin
   Canvas.Brush.Color := TColor(ListBox.Items.Objects[Index]);
   Canvas.Ellipse(Left + 4, Top + 4, Left + 12, Bottom - 4);
   Inc(Left, 16);
 end;
end;

Помогите исправить


 
MBo ©   (2008-11-18 13:06) [1]

после рисования эллипса Brush.style поставь bsClear


 
{RASkov} ©   (2008-11-18 13:07) [2]

> [0] Scot Storch   (18.11.08 12:51)

procedure Tform_Main.list_ResultDrawItem(ListBox: TCustomListBox_;
Canvas: TCanvas; Index: Integer; var Rect: TRect; State: TOwnerDrawState;
var Done: Boolean);
begin
with (Control as TListBox).Canvas do
begin
  FillRect(Rect);
  TextOut(Rect.Left+16, Rect.Top, (Control as TListBox).Items[Index]);
  Brush.Color := TColor(ListBox1.Items.Objects[Index]);
  Ellipse(Rect.Left + 4, Rect.Top + 4, Rect.Left + 12, Rect.Bottom - 4);
  //Inc(Left, 16);
end;
end;


 
Scot Storch   (2008-11-18 13:14) [3]

Всем спасибо



Страницы: 1 вся ветка

Текущий архив: 2008.12.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.011 c
2-1226839134
Kawun
2008-11-16 15:38
2008.12.28
Получить массив и подсчитать его элементы. (+ см.тему)


2-1226918959
BiT
2008-11-17 13:49
2008.12.28
Подскажите, пожалуйста, как скопировать определенный текст в memo


3-1212327199
Сашик
2008-06-01 17:33
2008.12.28
Recordset.Close


11-1194856460
Soloton
2007-11-12 11:34
2008.12.28
KOL и XML


1-1204962203
GrafDrakula
2008-03-08 10:43
2008.12.28
Прозрачный Listbox1, memo(richedit)