Программирование для IBM OS2


Создание главного окна приложения - часть 2


Что же касается окна Client Window , то это окно создается всегда на базе класса, зарегистрированного приложением. Приложение должно определить функцию окна, которая будет обрабатывать сообщения, предназначенные окну Client Window.

Для упрощения клиентское окно Client Window иногда называют главным окном приложения, хотя вы должны понимать, что настоящим главным окном является окно Frame Window . Функция окна Frame Window находится внутри системы Presentation Manager и вам не надо о ней беспокоиться.

Ниже мы привели фрагмент кода, в котором создается главное окно приложения. Здесь предполагается, что создание очереди сообщений и регистрация класса окна уже выполнены.

#define ID_APP_FRAMEWND 1 HWND hWndFrame; HWND hWndClient; ULONG flFrameFlags = FCF_SYSMENU | FCF_TITLEBAR | FCF_MINMAX | FCF_SIZEBORDER | FCF_SHELLPOSITION | FCF_TASKLIST | FCF_ICON;

CHAR szAppTitle[] = "My First OS/2 Application"; CHAR szWndClass[] = "MYWINDOW";

hWndFrame = WinCreateStdWindow (HWND_DESKTOP, WS_VISIBLE , &flFrameFlags, szWndClass, szAppTitle, 0, 0, ID_APP_FRAMEWND, &hWndClient);

if(hWndFrame == NULLHANDLE) { WinDestroyMsgQueue (hmq); WinTerminate (hab); return(-1); }

Ниже мы привели прототип функции WinCreateStdWindow с кратким описанием параметров:

HWND WinCreateStdWindow ( HWND hwndParent, // идентификатор родительского окна ULONG flStyle, // стиль окна Frame Window PULONG pflCreateFlags, // флаги создания // окна Frame Window PSZ pszClassClient, // имя класса клиентского окна PSZ pszTitle, // заголовок окна ULONG flStyleClient, // стиль клиентского окна HMODULE Resource, // идентификатор ресурсов ULONG ulId, // идентфикатор окна Frame Window PHWND phwndClient); // идентификатор клиентского окна

В качестве первого параметра hwndParent вы должны передать этой функции идентификатор родительского окна. В следующей главе мы рассмотрим подробнее "семейные" отношения в мире окон Presentation Manager. Сейчас ограничимся таким определением: родительское окно - это то окно, которое создало данное окно и потому связано с ним некоторыми "отношениями".


Начало  Назад  Вперед



Книжный магазин