Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.135.187.106] |
|
Страницы: (2) 1 [2] все ( Перейти к последнему сообщению ) |
Сообщ.
#16
,
|
|
|
Цитата Fr0sT @ Потому как когда на середине проекта ты столкнешься с тем, что, к примеру, LV на 10к записей еле ворочается, переделывать будет куда муторней Об этом я знаю, но проекту над которым я сейчас работаю это не грозит так как в LV будет находится максимум 200 итемов (и это уже бОООльшим запасом). Извините за назойливость но все же Цитата joiner @ Почему после назначения ListView1.WindowProc := FlistViewOldWndProc; управление переходит все равно в ListViewNewWndProc? |
Сообщ.
#17
,
|
|
|
joiner, автор спрашивает как корректно сделать ListView чтобы можно было прятать столбцы как в Диспетчере задач, вот я и говорю что корректно для этого будет использовать VirtualListView. Данные там хранятся в своей структуре, поэтому фактически работаешь только с теми данными которые отображаются, а остальные просто игнорируешь, что-то типа:
// этот кусок например при обработке по таймеру for i := 0 to ProcessCount do begin if columnCPUUsage.Visible then begin // <<получить данные об загрузке процессора процессом>> end; if columnMemoryUsage.Visible then begin // <<получить данные об использовании памяти>> end; end; // <<обновить ListView>> // этот кусок когда ListView запрашивает данные for i := 0 to Columns.Count do begin if Columns[i] = columnCPUUsage then Columns[i].Text := Process.CPUUsage else if Columns[i] = columnMemoryUsage then Columns[i].Text := Process.MemoryUsage; end; Осталось просто в наглую показывать/прятать столбцы. Это конечно на пальцах, и да тут нужно пописАть ручкам, это рутина, но это хороший обкатаный способ, а ты пытаешься изобретать что-то новое, при этом забываешь что не все пути приводят к успеху. |
Сообщ.
#18
,
|
|
|
Цитата Step @ joiner, автор спрашивает Вообще-то что спрашивал автор почти 5 лет назад уже никого не волнует. |
Сообщ.
#19
,
|
|
|
Задавать свой вопрос принято в своей ветке. Не знаю, почему модераторы не обратили своё внимание на твой пост. Наверно "проспали". |