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

Вниз

Перерисовка ListView   Найти похожие ветки 

 
Abikos   (2003-10-08 18:54) [0]

И снова здравствуйте !
На этот раз такой вопрос:
Я отрисовываю ListView и использую OwnerDrawSubItem для выделения различных типов событий рахным цветом. Чтобы ListView не мерцал я делаю Perform(WM_SETREDRAW, 0, 0) и Perform(WM_SETREDRAW, 1, 0)
При работе с фильтрами (показ только событий выбранных пользователем) меняется количество итемов в ListView и начинаются глюки. Не отрисовывается Scroller у ListView :(
если переключится в другое приложение и назад он перерисовывается правильно... Что делать ???? Вот код :

Perform(WM_SETREDRAW, 0, 0);
ListView1.Items.Clear;
for i:=0 to Query4.RecordCount-1 do
begin
Item:=ListView1.Items.Add;
case Query4.FieldByName("typ").AsInteger of
0:Item.Caption:="


 
clickmaker ©   (2003-10-08 19:19) [1]

Вообще-то у ListView есть парочка методов Items.BeginUpdate / EndUpdate. Лучше их юзать вместо WM_SETREDRAW. И Repaint и Refresh в этом случае будут лишними


 
mmn   (2003-10-14 09:07) [2]

У меня тоже проблемы с использованием CustomDrawItem и CustomDrawSubItem для TListView.
Даже без изменения количества элементов в списке, если просто мышкой сделать шире или уже колонку при выполнении программы, то начинаются похожие глюки (обычно шрифт в ListView вдруг становится жирным, перестаёт вызываться TOpenDialog, перестают перерисовываться ДРУГИЕ контролы!).
В самих обработчиках CustomDrawItem и CustomDrawSubItem только меняю ListView.Canvas.Brush.Color и ...Font.Color.
Может кто-то что-то может сказать по этому поводу?



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
1-89326
GreySerg
2003-10-16 15:20
2003.10.27
Как сделать , чтобы прога была только в tray при её загрузке ?


1-89206
Checist [root]
2003-10-15 13:58
2003.10.27
Сохранение картинки из веб страници


14-89570
DenKop
2003-10-06 15:16
2003.10.27
Как посмотреть какие параметры в HTTP запросе передаёт IE.


3-89137
Gawk
2003-10-08 15:09
2003.10.27
DBGrid+ADOQuery заголовок DBGrid


14-89452
Gorlum
2003-10-10 11:14
2003.10.27
Посоветуйте, кто знает.