Главная страница
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.03 c
2-1153144674
crazy_corpse
2006-07-17 17:57
2006.08.06
ЧЕ такое Handel и зачем это нужно


6-1139059311
Get_
2006-02-04 16:21
2006.08.06
TIdTelnetServer, помогите избавится от ошибок


15-1152711115
Ламот
2006-07-12 17:31
2006.08.06
Цифровая аппаратура в «жарком» климате…


2-1152785917
Layner
2006-07-13 14:18
2006.08.06
Как восстановить программу зная ее THandle, из другой программы?


15-1152620171
boriskb
2006-07-11 16:16
2006.08.06
Вот так программы писать надо.