Модераторы: feodorv, GremlinProg, xvr, Fixin
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> MDI в WinAPI, все окна содержат одно и тоже! Прямоугольники во всех окнах 
:(
    Опции темы
radarrulez
Дата 10.11.2007, 01:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 10.11.2007
Где: Минск

Репутация: нет
Всего: нет



Вообщем, такая проблема, в приложение надо чтобы рисовались прямоугольники, они рисуються но в каждом окне одно и тоже, приложение MDI, WinAPI. Вопрос как решить эту проблему ?

Добавлено через 1 минуту и 46 секунд
вот файл

Присоединённый файл ( Кол-во скачиваний: 27 )
Присоединённый файл  New.rar 11,91 Kb
PM MAIL ICQ Skype   Вверх
ama_kid
Дата 10.11.2007, 18:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


АСУТП-кодер
***


Профиль
Группа: Комодератор
Сообщений: 1460
Регистрация: 5.3.2007
Где: Москва

Репутация: 5
Всего: 95



Цитата(radarrulez @  10.11.2007,  01:16 Найти цитируемый пост)
как решить эту проблему

Читаем:
Цитата(radarrulez @  10.11.2007,  01:16 Найти цитируемый пост)
надо чтобы рисовались прямоугольники

Цитата(radarrulez @  10.11.2007,  01:16 Найти цитируемый пост)
они рисуються

И в чем, собственно, проблема?




--------------------
самурай без меча подобен самураю с мечом, но только без меча 
PM MAIL   Вверх
ppoger
Дата 11.11.2007, 03:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 31
Регистрация: 14.7.2007

Репутация: нет
Всего: нет



в том то и проблема, что все рисуется одно и тоже, а надо чтоб в каждом окне было нарисовано что то свое. (я так понял). В книге Петзольда Программирование для Вин95 показано, как решать ету проблему. Собсна прикрепляю оттуда пример.

Присоединённый файл ( Кол-во скачиваний: 23 )
Присоединённый файл  mdi.rar 21,05 Kb
PM MAIL   Вверх
radarrulez
Дата 11.11.2007, 17:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 10.11.2007
Где: Минск

Репутация: нет
Всего: нет



Не ну пример петзольда я изучил, делал на его основе рисование, но в каждом окне попрежнему оставалось одно и тоже, как никрути! Я просто непойму что отвечает за то что в каждом окне рисуеться одно и тоже! 
PM MAIL ICQ Skype   Вверх
ama_kid
Дата 11.11.2007, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


АСУТП-кодер
***


Профиль
Группа: Комодератор
Сообщений: 1460
Регистрация: 5.3.2007
Где: Москва

Репутация: 5
Всего: 95



radarrulez, просто рисуется и запоминается один прямоугольник, общий для все окон, поэтому оконные процедуры всех окон читают данные этого прямоугольника и рисуют его... чтобы сделать индивидуальные прямоугольники, (навскидку!) надо будет запоминать положение каждого нарисованного прямоугольника с привязкой к конкретному окну, допустим можно сделать динамический массив координат прямоугольников (а лучше - отдельный класс, который будет этим заниматься). И в обработке сообщения WM_PAINT проходить по массиву и рисовать только те прямоугольники, которые относятся к данному окну.


--------------------
самурай без меча подобен самураю с мечом, но только без меча 
PM MAIL   Вверх
ppoger
Дата 11.11.2007, 19:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 31
Регистрация: 14.7.2007

Репутация: нет
Всего: нет



2radarrulez не знаю, по какому примеру ты делал, т.к то что описано у петзольда в твоем коде я не заметил. ты хоть скачал то че я выложил? там ето сделано так: создана структура для однотипного окна, созданы поля, для которых требуется уникальность данных. потом функцией SetWindowLong запонималось данная структура для каждой копии окна, функцией GetWindowLong возвращалось значение. Так что изучи пример ВНИМАТЕЛЬНО, там все нормально описано. короче я не умею объяснять нифига, проще пример просмотри внимательно.
PM MAIL   Вверх
radarrulez
Дата 11.11.2007, 20:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 10.11.2007
Где: Минск

Репутация: нет
Всего: нет



Да, я уже просёк что дело в той структуре LPHELLODATA, догнал потихоньку! Спасибо всем кто помог, если что исчо напишу если будут вопросы !
PM MAIL ICQ Skype   Вверх
radarrulez
Дата 12.11.2007, 21:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 10.11.2007
Где: Минск

Репутация: нет
Всего: нет



Блин так и не просёк, помогите плз, немогу сделать так чтобы окна вели себя по разному! НЕПОЙМУ В ЧЁМ ФИШКА ! уже что только непробовал, посомтрите кому невлом проектик, как сделать так чтобы рисовались разные прямоугольники в разных окнах, а не так чтобы нарисовал в одном и нарисовалось во всех (

Присоединённый файл ( Кол-во скачиваний: 11 )
Присоединённый файл  New.rar 12,28 Kb
PM MAIL ICQ Skype   Вверх
ppoger
Дата 12.11.2007, 22:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 31
Регистрация: 14.7.2007

Репутация: нет
Всего: нет



делать времени нет :( могу объяснить. у них есть структура, которая все запомимает. Ну тупо добавь в ету структуру вектор ректов (твои прямоугольники). нарисовал - запомнил. так для каждого окна. при вм паинт читаешь все ректы из вектора и отрисовываешь.
PM MAIL   Вверх
ama_kid
Дата 13.11.2007, 13:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


АСУТП-кодер
***


Профиль
Группа: Комодератор
Сообщений: 1460
Регистрация: 5.3.2007
Где: Москва

Репутация: 5
Всего: 95



Цитата(radarrulez @  12.11.2007,  21:30 Найти цитируемый пост)
как сделать так чтобы рисовались разные прямоугольники в разных окнах, а не так чтобы нарисовал в одном и нарисовалось во всех 
Так что ли? (см. аттач)


Присоединённый файл ( Кол-во скачиваний: 29 )
Присоединённый файл  MDI_App.rar 15,32 Kb


--------------------
самурай без меча подобен самураю с мечом, но только без меча 
PM MAIL   Вверх
ama_kid
Дата 13.11.2007, 13:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


АСУТП-кодер
***


Профиль
Группа: Комодератор
Сообщений: 1460
Регистрация: 5.3.2007
Где: Москва

Репутация: 5
Всего: 95



блин, инет косячит

Это сообщение отредактировал(а) ama_kid - 13.11.2007, 13:51


--------------------
самурай без меча подобен самураю с мечом, но только без меча 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Системное программирование и WinAPI"
Fixin
GremlinProg
xvr
feodorv
  • Большое количество информации и примеров с использованием функций WinAPI можно найти в MSDN
  • Описание сообщений, уведомлений и примеров с использованием компонент WinAPI (BUTTON, EDIT, STATIC, и т.п.), можно найти в MSDN Control Library
  • Непосредственно, перед созданием новой темы, проверьте заголовок и удостоверьтесь, что он отражает суть обсуждения.
  • После заполнения поля "Название темы", обратите внимание на наличие и содержание панели "А здесь смотрели?", возможно Ваш вопрос уже был решен.
  • Приводите часть кода, в которой предположительно находится проблема или ошибка.
  • Если указываете код, пользуйтесь тегами [code][/code], или их кнопочными аналогами.
  • Если вопрос решен, воспользуйтесь соответствующей ссылкой, расположенной напротив названия темы.
  • Один топик - один вопрос!
  • Перед тем как создать тему - прочтите это .

На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы .


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема »


 




[ Время генерации скрипта: 0.0903 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.