Проблема с дочерним окном.

Тема в разделе "MS Visual C++", создана пользователем juicy_emad, 5 июн 2006.

Статус темы:
Закрыта.
  1. juicy_emad

    juicy_emad Гость

    > USE: WIN32 API & Microsoft Visual Studio 6.5 C++.
    У меня есть проект, где я создал главное окно с использованием функции CreateWindowEx. А также я создал диалог, поместил его в ресурсы, и создал его как окно с пом. функции DialogBoxParam. Диалог я создавал в отдельном потоке, и решил сделать окно диалога дочерним...
    Поставил стиль CHILD в редакторе диалога, указал хендл родительского окна в функции DialogBoxParam; А в результате у меня ничего не получилось. Я решил поставить стиль POPUP диалогу, но я сталкнулся с проблемами (Ручная обработка событий типа: WM_KILLFOCUS, WM_NCACTIVATE, WM_NCLBUTTONDOWN - в обработчике главного окна, просто для того, чтобы это якобы дочернее окно сворачивалось вместе с главным.)... Мне просто нужно, чтобы можно было легко переключать фокус ввода кликая сначало по одному окну, потом по другому; Мне нужно чтобы они вместе сворачивались и разворачивались. Как мне это сделать?
    Я потратил на это кучу времени. Очень прошу помочь мне (Очень прошу с исходниками проекта :) ). Заранее спасибо всем за помощь.
     
  2. Maxx

    Maxx Гость

    функция DialogBoxParam создает модальный диалог
    можно создать немодальный диалог - функция CreateDialog
    а цикл обработки сообщений сделать примерно таким

    Код (Text):
    MSG msg;
    while (GetMessage(&msg, 0, 0, 0))
    {
    if (!IsWindow(hDialogWnd) || !IsDialogMessage(hDialogWnd, &msg))
    {
    TranslateMessage(&msg);
    DispatchMessage(&msg);
    }
    }
    hDialogWnd - дескриптор диалогового окна

    теперь главное окно и диалог сворачиваются и разворачиваются вместе
    и переключаться между ними можно мышой без дополнительного кода
     
  3. orcommander

    orcommander Гость

    Кстати, у меня на эту же тему вопрос: в дочернее окно не могу вклеить меню.
    Если в CreateWindow не устанавливаю WS_CHILD для дочернего - меню есть, пишу - нету.

    Нэндл меню передаю, хэндл родительского окна передаю.

    Смысл проблемы - нужно дочернее окно, которое в "рамках" родительского (сворачивается в нем) и менюха в родительском (вопроса нет) и в дочернем (это проблема).
     
  4. Maxx

    Maxx Гость

    в MSDN товарищи написали:
    можно сделать приложение на основе MDI только с одним (или сколько надо) окном
    и отслеживать его состояние, положение, размер
    и будет у него меню и сворачиваться будет
    пример создания такого приложения (только без меню) поставляется с MSDAC SDK,
    называется RowsetViewer
     
  5. orcommander

    orcommander Гость

    Thx, дело в том что на данный момент msdn'a небыло. Были справочники только по api.
     
Загрузка...
Похожие Темы - Проблема дочерним окном
  1. AgniXRudra
    Ответов:
    2
    Просмотров:
    54
  2. Zloikaktus
    Ответов:
    0
    Просмотров:
    31
  3. c0de3r
    Ответов:
    5
    Просмотров:
    153
  4. DobermannTT
    Ответов:
    10
    Просмотров:
    160
  5. SoulPaladin
    Ответов:
    4
    Просмотров:
    145
Статус темы:
Закрыта.

Поделиться этой страницей