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


Приложение MENUMOD


Приложение MENUMOD демонстрирует описанную выше методику изменения системного меню и динамического добавления временного меню в меню верхнего уровня.

На рис. 3.8 показано системное меню приложения, в которое были добавлены разделительная линия и строка Product Information.

Рис. 3.8. Измененное системное меню в приложении MENUMOD (приложение запущено в среде частично локализованной операционной системы, поэтому вы видите русские строки системного меню)

Кроме того, в приложении MENUMOD мы показали, как создаются вложенные меню (рис. 3.9).

Рис. 3.9. Использование вложенных меню в приложении MENUMOD

Исходные тексты приложения приведены в листинге 3.5.

Листинг 3.5. Файл menumod\menumod.c

// =================================================== // Определения // ===================================================

#define INCL_WIN #define INCL_GPI #define INCL_WINDIALOGS

#include <os2.h> #include <stdio.h> #include "menumod.h"

// Прототип функции окна приложения MRESULT EXPENTRY WndProc(HWND, ULONG, MPARAM, MPARAM);

// =================================================== // Глобальные переменные // ===================================================

// Идентификатор Anchor-block HAB hab;

// Идентификатор окна Frame Window HWND hWndFrame;

// Идентификатор окна Client Window HWND hWndClient;

// Заголовок приложения CHAR szAppTitle[] = "Menu Modification Demo";

// Идентификатор меню Edit HWND hwndEditMenu;

// Идентификатор меню верхнего уровня HWND hwndMenu;

// =================================================== // Главная функция приложения main // ===================================================

int main () { // Идентификатор очереди сообщений HMQ hmq;

// Структура, в которую записывается сообщение, // извлеченное из очереди QMSG qmsg;

// Переменная для хранения кода возврата BOOL fRc;

// Флаги для создания окна Frame Window ULONG flFrameFlags = FCF_SYSMENU | FCF_TITLEBAR | FCF_MINMAX | FCF_SIZEBORDER | FCF_SHELLPOSITION | FCF_TASKLIST | FCF_ICON | FCF_MENU;




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



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