Последние темы Поиск
Общие форумы
Специализированные форумы
ПроцессорыРазгон и охлаждениеСистемные платыМодули памятиВидеосистемаTV- и FM-тюнеры, видеовход, видеовыходЦифровое видео: захват, монтаж, обработкаМониторы и другие устройства отображенияЦифровое фотоБеспилотные летательные аппаратыЦифровой звукProAudio: Профессиональное звуковое оборудованиеСтереосистемыДомашний кинотеатр: проигрыватели и источники сигналаДомашний кинотеатр: аудиосистемаДомашний кинотеатр: ТV и проекторыМагнитные и SSD накопителиОптические носители информацииСетевые носители информацииПериферияКорпуса, блоки питания, UPSСети, сетевые технологии, подключение к интернетуСистемное администрирование, безопасностьСерверыНоутбуки, нетбуки и ультрабукиПланшеты и электронные книгиМобильные телефоны, смартфоны, кпк, коммуникаторыМобильные гаджетыОператоры и технологии мобильной связиТелефония, телекоммуникации, офисные АТСБытовая техника
Программы
Игры
Авторские форумы
Прочие форумы
Форумы поддержки портала iXBT.com
Архивы конференции
Архив "О Конференции"Архив "Процессоры"Архив "Разгон и охлаждение"Архив "Системные платы"Архив "Модули памяти"Архив "Видеосистема"Архив "Видеозахват"Архив "Мониторы и другие устройства отображения"Архив "Цифровое изображение"Архив "Цифровой звук"Архив "Периферия"Архив "Корпуса, блоки питания, UPS"Архив "Коммуникации: сети и сетевые технологии"Домашний интернет, модемы (архив)Архив "Системное администрирование, безопасность"Архив "Мобильная связь"Программы Microsoft: Windows, Office, Server, Windows LiveАрхив "OС и системное ПО"Архив "Программы: Интернет"Архив "Программирование"Форум прикладных программистовАрхив "Электронные устройства и компоненты"Архив "Околокомпьютерный Флейм & Общий"Архив "Полемика (Злобный Флейм)"Околоавтомобильный ФлеймФорум ремонтниковВопросы компании IntelФотокамеры SamsungФорум о магазине приложений RuStoreФорум по продукции компании Huawei
Справка и сервисы
Другие проекты iXBT.com
mr.Question: Как "дозировать" вывод на экран больших текстовых фалов
mr.Question
unregistered
Автор темы
Ответить
m
mr.Question unregistered Автор темы
20 лет назад / 21 марта 2005 11:25
Господа программисты.
Опишу суть проблемы. Имеется logfile. Каждая запись из него выводится на экран в виде дерева (TreeView). Проблема в том, что при большом объеме файла, считывание всего файла в TreeCtrl затягивается на несколько минут А иногда приводит к зависанию. Решено "дозировать" поступающие данные в контрол. Вот только как это сделать граммотно - незнаю. Буду рад любой помощи.
Пишется все в vc6
Drv
Junior Member
78/78 ответов
20 лет на iXBT, с февраля 2005
4 фото на iXBT.photo
Чаще пишет в "Программирование" (64%)
Инфо Ответить
D
Drv Junior Member
20 лет назад / 21 марта 2005 12:52
mr.Question

Лог + CTreeView = нехорошо

Самый правильный способ(в Вашем случае) - CListView в режиме виртуального списка.
mr.Question
unregistered
Автор темы
Ответить
m
mr.Question unregistered Автор темы
20 лет назад / 21 марта 2005 14:10
Drv
Поясните, пожалуйста, что это за режим? И почему Лог+CTreeView = нехорошо?
Prog2 Michael
unregistered
Ответить
P
Prog2 Michael unregistered
20 лет назад / 21 марта 2005 19:22
mr.Question
что это за режим?
Это когда ListView уведомляет (WM_NOTIFY + LVN_ODCACHEHINT) родителя: "приготовься, сейчас начну просить информацию об элементах с номера NMLVCACHEHINT.iFrom по NMLVCACHEHINT.iTo", а затем запрашивает (WM_NOTIFY + LVN_GETDISPINFO) информацию о каждом элементе.

почему Лог+CTreeView = нехорошо
Afaik идеология log-файла - список, а идеология дерева - иерархия.
Chippy2003
Member
514/1323 ответов
21 год на iXBT, с сентября 2003
6 фото на iXBT.photo
Чаще пишет в "Программирование" (29%)
Инфо Ответить
C
Chippy2003 Member
20 лет назад / 21 марта 2005 20:22

Prog2 Michael
Afaik идеология log-файла - список,
Смотря какой лог, если есть стек-трейсы то дерево - самое оно.
Димка
unregistered
Ответить
Д
Димка unregistered
20 лет назад / 21 марта 2005 20:36
mr.Question
Если оставаться в рамках TreeView (и если это действительно дерево с хорошей вложенностью), то помогает использование поля TVITEM::cChildren с установкой его в I_CHILDRENCALLBACK. В этом случае окно получает извещение WM_NOTIFY, когда пользователь пытается открыть именно это поддерево. В этом момент можно добавить в TreeView необходимых детей только этого узла.
Правда, если нажать Gray* на корневом объекте TreeView, этот прием не спасает...
Harkonnen
Member
2277/2808 ответов
25 лет на iXBT, с февраля 2000
Чаще пишет в "Наука" (45%)
Инфо Ответить
H
Harkonnen Member
20 лет назад / 21 марта 2005 22:23
mr.Question
А там не делается UpdateWindow после каждого добавления? Например, самим TreeView

Попробуй ему visible снять на время population.
Drv
Junior Member
84/84 ответов
20 лет на iXBT, с февраля 2005
4 фото на iXBT.photo
Чаще пишет в "Программирование" (64%)
Инфо Ответить
D
Drv Junior Member
20 лет назад / 22 марта 2005 10:44
Harkonnen


А там не делается UpdateWindow после каждого добавления
Делается, делается
EnableWindow(FALSE/TRUE) еще никому не мешало
mr.Question
unregistered
Автор темы
Ответить
m
mr.Question unregistered Автор темы
20 лет назад / 22 марта 2005 11:29
Спасибо. Попробую режим виртуального списка.
Ваш ответ:

Нет значка Нет значка Вот тут! Лампочка Восклицание Вопрос Класс! Улыбка Злость Огорчение Поговорим? Краснею Подмигивание Ругаю ОдобряюBIUdelSxsupxsuboffsp spoilerqurlimgvideo• list1. list1 codeprecenter-hr-rusQWE→ЙЦУ
файлыочистить
Ваше имя: Авторизуйтесь Предпросмотр В полную форму
вставить выделенную цитату в окно ответа
Если Вы считаете это сообщение ценным для дискуссии (не обязательно с ним соглашаться), Вы можете поблагодарить его автора, а также перечислить ему на счет некоторую сумму со своего баланса (при отзыве благодарности перечисленная сумма не будет вам возвращена).
Также вы можете оценить сообщение как неудачное.
В течение суток можно 20 раз оценить сообщения разных участников (купите Premium-аккаунт, либо оплачивайте оценки сверх лимита).
Если Вы считаете это сообщение ценным для дискуссии (не обязательно с ним соглашаться), Вы можете поблагодарить его автора, а также перечислить ему на счет некоторую сумму со своего баланса (при отзыве благодарности перечисленная сумма не будет вам возвращена).
Также вы можете оценить сообщение как неудачное.
В течение суток можно 20 раз оценить сообщения разных участников (купите Premium-аккаунт, либо оплачивайте оценки сверх лимита).