CreateWindowEx и перерисовка дочерних окон

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Avtopic
Постоялец
Постоялец
 
Сообщения: 442
Зарегистрирован: 30.09.2005 (Пт) 17:15
Откуда: Tbilisi

CreateWindowEx и перерисовка дочерних окон

Сообщение Avtopic » 02.06.2007 (Сб) 16:07

Здравствуйте!

Делаю календарь. Для этого:
Код: Выделить всё
CreateWindowEx(0, "myWindowClass", "My Window", WS_POPUP....

потом создаю два комбобокса
Код: Выделить всё
CreateWindowEx(0, "Combobox", "My Combobox", WS_CHILD Or WS_VISIBLE Or CBS_DROPDOWNLIST....

Остальные вещи рисую в hdc окна.
Если рисунок перекрывает Combobox приходится принимать меры для перерисовки Combobox-а , чтобы они опять были сверху.
А, вот почему так приходится, не понимаю, что окно родителя само не должно заботится, чтобы дочерние окна были поверх ее рисунка?

EUGY
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 214
Зарегистрирован: 09.11.2006 (Чт) 22:51
Откуда: Мурманск

Сообщение EUGY » 02.06.2007 (Сб) 16:26

ты забыл
WS_CLIPCHILDREN | WS_CLIPSIBLINGS

Avtopic
Постоялец
Постоялец
 
Сообщения: 442
Зарегистрирован: 30.09.2005 (Пт) 17:15
Откуда: Tbilisi

Сообщение Avtopic » 02.06.2007 (Сб) 22:09

Спасибо EUGY!

одна проблема была, что у меня не стаял WS_CLIPCHILDREN, а
главная била в том что неправильно находил GetDC и рисовал прямо в DC десктопа!!! :oops: :? :?

Avtopic
Постоялец
Постоялец
 
Сообщения: 442
Зарегистрирован: 30.09.2005 (Пт) 17:15
Откуда: Tbilisi

Сообщение Avtopic » 03.06.2007 (Вс) 13:31

Вот, что из моей затеи получилось.
Календарь без формы, только один модуль.

Наверно код нарушает все провыла объектно-ориентированного программирования, но, по-моему, содержит много полезных мест для тех, кто питается разобраться в API.
а именно, создание окон, рисование, рисование контроль-ев, добавление и обработка полосы прокрутки, обработка сомбобокса сообщениями. И плюс, оригинальное решение часов, с возможностью установки времени mouse-ом.

Очень интересно было бы узнать мнение других.
Вложения
Calendar.rar
(7.71 Кб) Скачиваний: 127

Tarik
Агент Системы
Агент Системы
Аватара пользователя
 
Сообщения: 1222
Зарегистрирован: 03.01.2003 (Пт) 16:05
Откуда: Москва

Сообщение Tarik » 03.06.2007 (Вс) 16:25

Не совсем ясна цель написания этого на VB6. Если уж хочется кодить на АПИ, то, может быть, стоит посмотреть в сторону VC? Там, по крайней мере, гемора с декларацией ф-ций нет
Изображение

Ever tried? Ever failed? No matter. Try again! Fail again! Fail better!

Matew
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 894
Зарегистрирован: 28.06.2004 (Пн) 17:44
Откуда: Дальний Восток, г. Ха

Сообщение Matew » 04.06.2007 (Пн) 8:03

Avtopic, пригодится для примера. А "Нюнь" рулит :D
Алкоголь и сканеры-ваши враги! Не верите-смотрите аватару :-)


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 81

    TopList  
cron