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

Вниз

Transparent для Item a в ListView...   Найти похожие ветки 

 
MTsv DN   (2005-11-04 15:53) [0]

Всем привет...
Такой вопрос появился: как сделать, при ручной прорисовке ListView, Transparent для Item"a?.. Если ListView на панеле градиентной стоит, чтобы BackGround его тоже был градиентным... Просто Transparent помогает, только при отсутствии Item"ов...

С Уважением MTsv DN


 
MTsv DN   (2005-11-05 15:21) [1]

В общем...может кому понадобится:
function TfrmMain.ListView1DrawItem(Sender: PObj; DC: HDC; const Rect: TRect;
 ItemIdx: Integer; DrawAction: TDrawAction;
 ItemState: TDrawState): Boolean;
var
  R: PRect;
  Brush: HBrush;
  S: String;
  ColorTxt, ColorBrush: TColor;
begin
  R := @Rect;
  S := PControl(Sender).LVItems[ItemIdx, 0];

  if odsSelected in ItemState then
   begin
    ColorTxt := Color2RGB(clBlue);
    ColorBrush := Color2RGB($00BE9476);
    Brush := CreateSolidBrush(ColorBrush);
    SetBkColor(DC, ColorBrush);
    FillRect(DC, R^, Brush);
   end
    else
     ColorTxt := Color2RGB(clBlack);

  SetTextColor(DC, ColorTxt);
  IL.Draw(PControl(Sender).LVItemImageIndex[ItemIdx] , DC, Rect.Left + 4 , Rect.Top + 4);
  if odsSelected in ItemState then DrawEdge(DC, R^, EDGE_RAISED, BF_RECT);

  Inc(R.Left, 30);
  DrawText(DC, @S[1], Length(S), R^, DT_VCENTER or DT_SINGLELINE or DT_EXPANDTABS);

  DeleteObject(Brush);
  Result:= True;
end;


P.S. Переделал код с этого форума для PopUp меню...

С Уважением MTsv DN



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

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

Наверх




Память: 0.46 MB
Время: 0.044 c
15-1152111934
Dust
2006-07-05 19:05
2006.08.06
Битые зипы по почте


11-1131187277
MTsv DN
2005-11-05 13:41
2006.08.06
KOLnMCK v.2.21


4-1145342218
max999
2006-04-18 10:36
2006.08.06
Как правильно выбирать шрифты для рисования...


3-1149247881
Iehbr
2006-06-02 15:31
2006.08.06
Не происходит удаление в базе данных ACCESS


3-1148930833
Евгений Р.
2006-05-29 23:27
2006.08.06
Нехватка еста для БДЕ