Проблемы с созданием MDI

Тема в разделе "WASM.BEGINNERS", создана пользователем Sertak, 5 фев 2006.

  1. Sertak

    Sertak New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2006
    Сообщения:
    3
    Адрес:
    Бобруйск (Белоруссия)
    Приветствую всех. Я начинающий на асме. По урокам Икзелиона кой-чему научился, но почему-то в MDI-приложении клиентское окно не появляется и, соответственно, не видны дочерние MDI.

    Стиль клиентского окна:

    WS_CHILD or WS_VISIBLE or WS_CLIPCHILDREN

    Если добавить WS_OVERLAPPEDWINDOW, оно, естесно, появляется за пределами фрейма. Это само собой, и тогда видны созданные MDI-окошки. Соответственно, сам алгоритм верен. Кто подскажет, где у меня ошибка, может, и не в стилях вовсе?
     
  2. Sertak

    Sertak New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2006
    Сообщения:
    3
    Адрес:
    Бобруйск (Белоруссия)
    Всё! Нашёл ошибку. Да и бестолково я как-то вопрос задал, без кода. А если интересно - опишу:



    WndProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM

    ......

    .IF uMsg==WM_CREATE

    ......

    ;создаём клиентское окно

    invoke CreateWindowEx, WS_EX_CLIENTEDGE, ADDR MDIClientName, NULL,\

    WS_CHILDWINDOW or WS_VISIBLE or WS_CLIPCHILDREN,\

    CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,\

    CW_USEDEFAULT, hWnd,\;а я вместо параметра hWnd

    ;лепил сразу hWndFrame - дескриптор родительского окна,

    ;что, с первого взгляда одно и то же

    NULL, hInstance,\

    ADDR ClientStruct

    mov hWndClient, eax