Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
S_S_V
0 / 0 / 0
Регистрация: 31.07.2007
Сообщений: 27
#1

Помогите решить задачку (БД и CListCtrl)... - C++

08.06.2008, 23:37. Просмотров 1146. Ответов 6
Метки нет (Все метки)

Задача собственно такая-
1.Есть набор записей (50 колонок и 1500 строк), который
отображается в CListCtrl в событии WM_INITDIALOG.
Пока весь контрол заполниться проходит много времени.
Хочется сделать так заполнить строк 30, а остальные постепенно
догружать после того как диалог уже отобразиться.
Как это лучше сделать? Какие события и сообщения использовать?
2. И еще вот какой вопрос -
есть большой цикл, результаты работы которого отражаются в progressbar'е диалога. На диалоге так же ест кнопка отмена
как правильно написать код чтобы при нажатии на кнопку 'отмена' процесс работы цикла завершился.
Помогите советами.
Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2008, 23:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Помогите решить задачку (БД и CListCtrl)... (C++):

Помогите решить задачку по Дейтлу - C++
Задачка: Создайте класс Account, который мог бы воспользоваться банк для представления банковских счетов своих клиентов. Ваш класс должен...

Решить задачку - C++
Когда встречаю эпсилон возникают проблемы, не пойму что это и как мудрить , знаю что надо использовать float и int все ) Умножить, сложить...

Как решить С++ задачку? - C++
Уважаемые программисты! Хочу обратиться за помошью к вам. Я не знаю как закончить класс (см. внизу), чтобы программа выполнялась. Буду...

ПОМОГИТЕ отредактировать задачку! - C++
Я полностью запутался! и уже не понимаю как правильно задан вопрос! вообще уже каша....... Поле шахматной доски определяется парой...

Помогите решать задачку в C++ - C++
Пожалуйста, помогите решать задачку. Разработать алгоритм и программу решений следующих задач: Описать функцию Fib(N) целого типа,...

Помогите кто может заделать задачку с бинарным деревом... - C++
Вершина бинарного дерева содержит ключ, строку и два указателя на потомков. Написать функцию, которая подсчитывает число ветвей от корня до...

6
Vita
Сообщений: n/a
09.06.2008, 08:31 #2
Наверное, решение лежит в области создания и синхронизации потоков. Создай поток и там заполняй CListCtrl, а диалог будет жить по своим правилам. Для синхронизации заполнения CListCtrl можно использовать Mutex или Semaphore.
То же самое и в случае завершения большого цикла.
vitvk
0 / 0 / 0
Регистрация: 26.11.2007
Сообщений: 20
09.06.2008, 13:34 #3
Для отображения БД в CListCtrl лучше всего подтягивать данные через
LVN_GETDISPINFO в этом случае вытаскиваешь из базы только те данные что выводятся на экран.
Vit
0
S_S_V
0 / 0 / 0
Регистрация: 31.07.2007
Сообщений: 27
09.06.2008, 13:54  [ТС] #4
Спасибо за ответы.
На счет LVN_GETDISPINFO такой вопрос -
добавлять записи как TEXT_CALLBACK
или стиль LVS_OWNERDATA.

И еще если стоит LVS_OWNERDATA и стиль LVS_EX_CHECKBOXES
как отобразить checbox'ы в этом списке.

Ребята если есть хорошие примеры работы с виртуальными списками
пришлите пожалуйста.

Большое спасибо еще за ответы.
0
vitvk
0 / 0 / 0
Регистрация: 26.11.2007
Сообщений: 20
09.06.2008, 14:03 #5
На http://codeguru.com много очень удачных примеров со списками,
да и со всем остальным тоже.
Про OwnerDraw - коли сказали что рисуете сами - то рисуете сами все включая крестики - поэтому проще тащить строки через TEXT_CALLBACK - i.e. DISPINFIO
Vit
0
S_S_V
0 / 0 / 0
Регистрация: 31.07.2007
Сообщений: 27
09.06.2008, 22:00  [ТС] #6
Vit спасибо за ответы. Ссылка действительно очень хорошая Спасибо.
На счет стилей CListCtrl небольшое замечание-
я создаю его со стилем LVS_OWNERDATA, а не LVS_OWNERDRAWFIXED - который и отвечает за самостоятельное создание внешнего вида элемента.
Хотя может и не прав.
0
vitvk
0 / 0 / 0
Регистрация: 26.11.2007
Сообщений: 20
10.06.2008, 16:57 #7
Извините Вы правы,
это я стиль до конца не дочитал.
По поводу CheckBox к сожалению ничего конкретного не скажу - можно попробовать посидеть в GetDispInfo и посмотреть кто и с чем туда приходит. Можно заменить checkBox своими картинками запрос о которых приходит в DispInfo
Vit
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2008, 16:57
Привет! Вот еще темы с ответами:

Помогите придумать несложную задачку по теме "Шаблоны классов" - C++
Привет всем, я новичок в С++, и хочу сделать какую нибудь задачу по теме "шаблоны классов", придумайте пожалуйста какую нибудь не сильно...

помогите решить - C++
1- составить прогу для решения уравнения см фото. примерное решение ,но тут проблема в уравнении int main() { float a, b,...

Помогите решить - C++
ЭТО ЗАДАНИЕ Position of "-1". In the given NxM matrix find the LAST position of the minus one(-1). If it will be no "-1" value in...

помогите решить... - C++
помогите, пожалуйста, решить вот такую задачу. думаю для здешних обитателей это как орешки щелкать, но я ничего в этом не понимаю. "Найти...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
10.06.2008, 16:57
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru