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

Вниз

Снова про прорисовку ListView   Найти похожие ветки 

 
Igor_thief   (2005-01-23 15:53) [0]

Мне очень хочется сделать что-то похожее на thumbnails preview как в ACDSee 7.0. Но пока что не очень то и получается. Дело в том, что у ListView есть несколько событий для прорисовки items и я никак не могу разобраться в каком мне надо делать прорисовку. Прочитал про них в хелпе, но все равно пока что "не врубаюсь" :). Помогите, плиз! ListView при выделения item"a рисует выделение иконки отдельно и текста под ней тоже отдельно. Чтобы выделить элемент, надо нажать именно на иконку (или чуть левее/правее) или на текст. В ACDSee картика выделяется если нажать в любом месте области картинки (под облястью картинки я подразумиваю прямоугольник, в котором находится и картинка и текст). В ListView область очень маленькая, а в ACDSee эту область можна менять. Как ее можна изменить в ListView.

procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView;
 Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
var
 ARect: TRect;
begin
 with ListView1.Canvas do
   begin
   if cdsSelected in State then
     Brush.Color := clSilver
   else
     Brush.Color := clWhite;
   ARect := Item.DisplayRect(drBounds);
   // если менять параметры Arect, то рамки верхнего и нижнего ряда вылазят за размеры окон
   // а размер горизонтального скрола остается прежним
   FillRect(ARect);
   Rectangle(ARect);
   end; // with
end;


 
Igor_thief   (2005-01-24 14:17) [1]

Неужели больше никому это не интерессно?



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

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

Наверх




Память: 0.47 MB
Время: 0.071 c
4-1103017563
Phantomouse
2004-12-14 12:46
2005.02.06
COM порт дубль 2


9-1098833740
Зелёный Буран
2004-10-27 03:35
2005.02.06
Ужасная проблема с изометрией... Помогите :)))


11-1089096771
Igit
2004-07-06 10:52
2005.02.06
Tfilestream


11-1089658722
AlexR
2004-07-12 22:58
2005.02.06
RichEdit и scrollbar


14-1105696379
uny
2005-01-14 12:52
2005.02.06
плоттер hp deskjet 450c - не хочет печатать..