Отображение динамически подгружаемого списка
|
|
Yarri | Дата: Понедельник, 20 Июля 2009, 13:12 | Сообщение # 1 |
Новый участник
Группа: Проверенные
Сообщений: 14
Репутация: 0
Награды: 0
Статус: Offline
| Тут вот такая проблема нарисовалась. При парсинге текста я получаю количество документов для определенного автора. В меню Документы для него генерю список из первых строк файла, которые и служат заголовками для него. Все хорошо прокатывает, если при загрузке поле списка ListBox не скрыто. Сделал так же для него подгонку по ширине и длине (если название длинное и разное количество документов). Но как только я его скрываю, а он должен появляться по событию наведения мыши показ/затухание на пункте Документы, то при старте программы и выборе мышью из списка любого автора при наводе мышью список появляется нужного размера, с отработанными полями (ибо размер берется из обработки получаемых строк), но без текста. Если я далее выберу мышью (или курсором подвигаю) на списке авторов другого автора или вернусь к нему снова через клик на другом авторе - список как ни в чем не бывало появляется. Refresh не помогает. Куда только я его не ставил. RESET списка перед заполнением стоит. Может сталкивались с подобным? Как лечить сие? На этом скриншоте в меню должно быть 12 пунктов. По длине и ширине оно его отработало.
Сообщение отредактировал Yarri - Понедельник, 20 Июля 2009, 13:22 |
|
| |
YURIY | Дата: Понедельник, 20 Июля 2009, 14:24 | Сообщение # 2 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Так... Что-то я сильно не въехал. Можете набросать маленький проект, откуда я смогу наблюдать неправильную работу?
Вечная память Андрею Сергееву!
|
|
| |
Alex3A | Дата: Понедельник, 20 Июля 2009, 14:28 | Сообщение # 3 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Когда то давно, я с этим сталкивался и решал эту проблему, но уже не помню. Есть небольшая особенность, надо выводить в лист информацию только тогда когда он видимый, таким образом, обновление происходит только если он видимый, с чем это связанно сказать трудно. 1.Попробуй делать его видимым на время записи в него строк. 2.Или в видимом состоянии, заполняй его за пределами окна. Что то из этого должно помочь.
|
|
| |
Yarri | Дата: Понедельник, 20 Июля 2009, 14:36 | Сообщение # 4 |
Новый участник
Группа: Проверенные
Сообщений: 14
Репутация: 0
Награды: 0
Статус: Offline
| Попробую сделать так. Даю ему видимость, но размеры по x и y принудительно в 0. Все одно он при заполнении у меня перерасчитывается. ----------- Не,в 0,0 не хочет. Буду думать над z-индеком... может его спрятать на время под основной список для заполнения.
Сообщение отредактировал Yarri - Понедельник, 20 Июля 2009, 14:39 |
|
| |
YURIY | Дата: Понедельник, 20 Июля 2009, 14:37 | Сообщение # 5 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Сейчас создал маленький проект. Делал его невидимым, убирал за часть экрана, не убирал - комбинировал всё это, но лист послушно заполнялся. Хотя припоминаю, когда-то у меня подобное было. Так что я не знаю что посоветовать. Всё же, хочу увидеть проект, если не помогут советы Алекса.
Вечная память Андрею Сергееву!
|
|
| |
Yarri | Дата: Понедельник, 20 Июля 2009, 14:46 | Сообщение # 6 |
Новый участник
Группа: Проверенные
Сообщений: 14
Репутация: 0
Награды: 0
Статус: Offline
| Получилось, как написал. Убрал его за основной список авторов видимым, затем ПОСЛЕ заполнения сразу его скрываю, чтобы он не вываливался на меню. Проект выложу здесь скоро весь. Конечно, там оптимизировать-непереоптимизировать, но по крайней мере, то, что многие начинающие смогут рисовать подобные вещи, меня порадует. Пусть это будет мой посильный вклад.
|
|
| |
Alex3A | Дата: Понедельник, 20 Июля 2009, 18:19 | Сообщение # 7 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| На сколько мне помниться, проблема вроде была при первом его заполнении, при старте страницы грузил плейлист.
|
|
| |
Yarri | Дата: Среда, 05 Августа 2009, 13:45 | Сообщение # 8 |
Новый участник
Группа: Проверенные
Сообщений: 14
Репутация: 0
Награды: 0
Статус: Offline
| В общем, нашел время доделать проект. И то, это только RC фактически, ибо там еще доделывать и улучшать много чего можно, а сдавать его надо для отчетности. Исходя из формулы "лучшее враг хорошего" я отдал проект в нынешнем его виде. До выкладывания его в форум готовых проектов хотел бы обсудить общие вопросы. 1 мегабайт для загрузки потянет? Я почистил там лишние папки, которые аналогичны оставшимся. Там просто фотографии есть небольшие. Они нужны для отображения возможностей. Что умеет проект. Прежде всего - делал я его под универсальность. Чтобы после меня сотрудники, занимающиеся продолжением проекта смогли просто добавлять файлы по шаблонной структуре, не заботясь о глобальной переделке самого проекта. В нынешнем варианте весь проект сделан на одной странице. Структура данных. Папка doc, в корне которой 5 файлов. 4 файла - текстовое описание на кнопки Главная, О проекте, Участники, О программе. 5 файл - описание структуры данных с форматом: ---------1-------------2--3-4-5---- Письма первой мировой#pmv#2#2#p# 1 Название, отображаемое в списке. 2 Имя каталога 3 Количество документов (минимум 1) 4 Количество фотографий (если 0, то вкладка Фотографии не отображается) 5 Идентификатор списка (в какой список вставлять документ) В каталоге с именем все файлы имеют одинаковую структуру. anno.txt - аннотация к текущему набору документов doc1.txt - документы от 1 до n (количество произвольно) doc2.txt ........ foto1.jpg - фотографии от 1 до n (количество произвольно) foto2.jpg ......... foto1.txt - аннотации к фотографии 1.....n foto2.txt (если нет ее, то аннотация не отображается) ......... doc1.htm - подменный файл к документу 1.....n doc2.htm если в doc(n).txt второй строкой стоит идентификатор htm ......... сделана заплатка для отображения таблиц, созданных в ворде или excel (так мне подсунули в конце работы, а весь проект править было тошно) Добавлено. Увеличение-уменьшение шрифта при чтении документа. Увеличение-уменьшение по клику фотографии. Не сделано. Поиск. Сортировка по дате документов.
Сообщение отредактировал Yarri - Среда, 05 Августа 2009, 13:52 |
|
| |
YURIY | Дата: Среда, 05 Августа 2009, 21:37 | Сообщение # 9 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Quote (Yarri) 1 мегабайт для загрузки потянет? Загрузить-то можно, но на сайте такой размер публиковать я не буду - это чересчур много! Неужели никак нельзя ничего уменьшить?
Вечная память Андрею Сергееву!
|
|
| |
Alex3A | Дата: Четверг, 06 Августа 2009, 00:38 | Сообщение # 10 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| пусть кинет на файлообменник, а линьку на сайт.
|
|
| |
YURIY | Дата: Четверг, 06 Августа 2009, 03:20 | Сообщение # 11 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Зачем? На форуме выставлен лимит в 2 метра. Только на сайте я метровый проект не опубликую.
Вечная память Андрею Сергееву!
|
|
| |
Yarri | Дата: Пятница, 07 Августа 2009, 22:39 | Сообщение # 12 |
Новый участник
Группа: Проверенные
Сообщений: 14
Репутация: 0
Награды: 0
Статус: Offline
| Тогда вместо реальных фото я поставлю ЧБ-болванки. Они в jpg будут мало места занимать.
|
|
| |
toizy | Дата: Пятница, 07 Августа 2009, 23:08 | Сообщение # 13 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
| Тоже вариант.
Жизнь оказалась не такой уж и забавной, как поначалу...
|
|
| |