Поиск:

Ответ в темуСоздание новой темы Создание опроса
> кнопка максимизации, в CMDIChildWnd 
:(
    Опции темы
xTr1m
Дата 14.9.2009, 19:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Вечер добрый. Имею MDI приложение. Есть собственный класс - базовый для всех дочерних окон.
его метод
Код

BOOL CWMSMDIChildWnd::PreCreateWindow(CREATESTRUCT& cs) 
{
    cs.style = WS_CHILD | WS_VISIBLE | WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU
        | FWS_ADDTOTITLE | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX;

    return CMDIChildWnd::PreCreateWindow(cs);
}

Создаю дочернее окно
Код

// это строка из CMainFrame.cpp
CreateNewChild(pSec->m_pFrameClass, IDR_WMSTYPE);

нажимаю на кнопку максимизации. Окно увеличивается, но кнопки минимизировать/
максимизировать/закрыть при этом исчезают. Сбился с ног. Единственное, что приходит в голову, так это
то, что необходимо подобрать правильное сочетание флагов (может какой-нить отменяет системные кнопки)
Буду благодарен за помощь.
PM MAIL WWW ICQ   Вверх
Earnest
Дата 15.9.2009, 07:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

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



Хм, по-моему не хватает расширенного стиля WS_EX_MDICHILD. Но вообще-то этого недостаточно для правильного функционирования MDI-приложения. Дочерние MDI-окна создаются не во фрейме непосредственнно, а в MDI-клиенте, который тоже нужно сначала создать. Далее, создаются они не вызовом Create, а посылкой сообщения WM_MDICREATE MDI-клиенту. Если уж тебе приспичило свой велосипед изобретать с MDI-оболочкой, то посмотри готовый код, хотя бы MFC.


--------------------
...
PM   Вверх
xTr1m
Дата 15.9.2009, 08:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Спасибо за информацию. Нашел следующий нюанс, что кнопки макс/мин появляются, если у MainFrame есть меню (файл, правка и т.п.)
Но в моем  приложении меню не нужно. А убираю меню пропадают кнопки =))
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




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


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

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