ListBox

Ответить

Код подтверждения
Введите код в точности так, как вы его видите. Регистр символов не имеет значения.

BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[url] ВКЛЮЧЁН
Смайлики ОТКЛЮЧЕНЫ

Обзор темы
   

Развернуть Обзор темы: ListBox

Re: ListBox

Игорь Акопян » 17 май 2007, 03:10

флажок выставить... а при отрисовке проверять

Re: ListBox

Yura_ua » 16 май 2007, 23:03

А что мне тогда писать в OnKeyDown?

Re: ListBox

Duncon » 16 май 2007, 10:30

Необходимо изменить свойство Style в TListBox на lbOwnerDrawFixed. Если не изменить свойство Style, то событие OnDrawItem никогда не вызовется.

Код: Выделить всё

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
  Rect: TRect; State: TOwnerDrawState);
var
  myColor: TColor;
  myBrush: TBrush;
begin
  myBrush := TBrush.Create;
  with (Control as TListBox).Canvas do begin
    if not Odd(Index) then myColor := clSilver else myColor := clYellow;
    myBrush.Style := bsSolid;
    myBrush.Color := myColor;
    Windows.FillRect(handle, Rect, myBrush.Handle);
    Brush.Style := bsClear;
    TextOut(Rect.Left, Rect.Top, (Control as TListBox).Items[Index]);
    MyBrush.Free;
  end;
end;

ListBox

Yura_ua » 15 май 2007, 23:55

как можно сделать, чтобы при нажатии клавиши на некотором элементе менялся его цвет?

Вернуться к началу