Операционные системы. Кручинин А.Ю. - 21 стр.

UptoLike

Составители: 

21
о событиях. Прикладная программа определяет идентификатор дочернего окна; он
должно быть уникальным для всех дочерних окон того же самого родительского
окна.
hInstance идентифицирует экземпляр модуля, который будет связан с окном.
lpParam указывает на значение, переданное окну через структуру
CREATESTRUCT, вызванную параметром lParam сообщения WM_CREATE. Если
прикладная программа вызвала CreateWindow, чтобы создать пользовательское
окно многодокументной среды, lpParam должен указывать на структуру
CLIENTCREATESTRUCT.
Возвращаемые значения
Если функция успешно завершила работу, возвращаемое значение
дескриптор для созданного окна. Если функция потерпела неудачу, возвращаемое
значение – NULL.
После успешного создания окна вызываются функции включения
отображения окна ShowWindow и обновления окна UpdateWindow. Затем
происходит вход в цикл обработки сообщений. Сообщения обрабатываются в
функции WIN32PROC, которую предварительно указали в классе окна.
Задание:
1. Ознакомиться со средой программирования Visual C++ 6.0.
2. Разработать программу создающую окно с иконкой средствами Win32 API.
Контрольные вопросы:
1. Каково назначение структуры WNDCLASS?
2. Какие операции производит функция CreateWindowEx?
3. Зачем нужен цикл по приѐму сообщений?
4. Что происходит в функции обработки сообщений?
Для самостоятельного изучения:
1. Различные способы построения циклов обработки сообщений.
4.2 Динамическое создание пунктов меню и создание формы окна
средствами Win32API
Те, кто программировал на Borland C++ Builder или Delphi знают, как легко
там создавать меню (изменять его) и внешний вид главного окна, перетаскивая туда
кнопки, списки и другие элементы. Однако, средствами Win32 API это делается
немного по-другому.
Создать меню статически просто это можно сделать по аналогии с
присоединением иконки к окну. Но как вы будете менять элементы окна, добавлять
и удалять пункты меню? Для этого надо знать, как работать с меню динамически.
Основные функции для создания меню перечислены ниже.
Функция CreateMenu
о событиях. Прикладная программа определяет идентификатор дочернего окна; он
должно быть уникальным для всех дочерних окон того же самого родительского
окна.
hInstance – идентифицирует экземпляр модуля, который будет связан с окном.
lpParam – указывает на значение, переданное окну через структуру
CREATESTRUCT, вызванную параметром lParam сообщения WM_CREATE. Если
прикладная программа вызвала CreateWindow, чтобы создать пользовательское
окно многодокументной среды, lpParam должен указывать на структуру
CLIENTCREATESTRUCT.
      Возвращаемые значения
      Если функция успешно завершила работу, возвращаемое значение –
дескриптор для созданного окна. Если функция потерпела неудачу, возвращаемое
значение – NULL.

     После успешного создания окна вызываются функции включения
отображения окна ShowWindow и обновления окна UpdateWindow. Затем
происходит вход в цикл обработки сообщений. Сообщения обрабатываются в
функции WIN32PROC, которую предварительно указали в классе окна.

Задание:
1. Ознакомиться со средой программирования Visual C++ 6.0.
2. Разработать программу создающую окно с иконкой средствами Win32 API.

Контрольные вопросы:
1. Каково назначение структуры WNDCLASS?
2. Какие операции производит функция CreateWindowEx?
3. Зачем нужен цикл по приѐму сообщений?
4. Что происходит в функции обработки сообщений?

Для самостоятельного изучения:
1. Различные способы построения циклов обработки сообщений.

     4.2 Динамическое создание пунктов меню и создание формы окна
     средствами Win32API

      Те, кто программировал на Borland C++ Builder или Delphi знают, как легко
там создавать меню (изменять его) и внешний вид главного окна, перетаскивая туда
кнопки, списки и другие элементы. Однако, средствами Win32 API это делается
немного по-другому.
      Создать меню статически просто – это можно сделать по аналогии с
присоединением иконки к окну. Но как вы будете менять элементы окна, добавлять
и удалять пункты меню? Для этого надо знать, как работать с меню динамически.
Основные функции для создания меню перечислены ниже.

     Функция CreateMenu
                                                                             21