Исследование способов создания приложения Windows с использованием ObjectWindows 2.x

Страницы работы

Содержание работы

Лабораторная работа N 1

Исследование способов создания приложения Windows

с использованием ObjectWindows 2.x ( OWL )

ТЕОРЕТИЧЕСКАЯ ЧАСТЬ

Приложение Windows

Среда программирования Borland C++ 4.x ( BC4 ) и библио тека классов ObjectWindows 2.x ( OWL ) созданы для того, чтобы облегчить разработку приложений Windows.

Чтобы создать программу MS-DOS, достаточно иметь ее исходный текст, компилятор и редактор связей. Компилятор транслирует файлы исходного текста в один или несколько объектных модулей. Редактор связей собирает из этих модулей с использованием библиотек загрузочный модуль.

Стандартные приложения Windows собираются из нескольких разнородных файлов.

┌─────────────┐    ┌────────┐   ┌────────┐    ┌───────┐

│  *.c, *.cpp │    │  *.obj │   │ *.lib  │    │  *.rc │

└─────────────┘    └────────┘   └────────┘    └───────┘

|                |           |             |

\/               |           |            \/

╔═════════════╗         |           |        ╔════════╗

║ Компилятор  ║         |           |        ║ rc.exe ║

╚═════════════╝         |           |        ╚════════╝

|                |------|    |             |

\/                      |    |             |

┌─────────────┐                |    |             |

│   *.obj     │-----------|    |    |             |

└─────────────┘           |    |    |             |

\/   \/   \/           \/

┌─────────────┐       ╔═══════════════════╗   ┌───────┐

│   *.def     │------>║  Редактор связей  ║   │ *.res │

└─────────────┘       ╚═══════════════════╝   └───────┘

|                  |

\/                 |

┌─────────┐            |

│  *.exe  │-|   |------|

└─────────┘ |   |

|   |

\/ \/

╔══════════╗

║  rc.exe  ║

╚══════════╝

|

\/

┌─────────┐

│  *.exe  │

└─────────┘

Рис.1    Сборка загрузочного модуля приложения Windows


Каждая программа должна использовать файл определения модуля (имя_файла.DEF), в котором указываются опции компоновщика, влияющие на тип создаваемого модуля и его характеристики.

NAME         - имя приложения

DESCRIPTION  - описание приложения

EXETYPE      - определение типа модуля

STUB         - программа, получающая управление при попытке запуска приложения в среде MS-DOS

CODE         - атрибуты сегмента кода

DATA         - атрибуты сегмента данных

HEAPSIZE     - размер динамически распределяемой области в байтах

STACKSIZE    - размер стека в байтах

/* ------------------------------------------------------- *

 *         QwlMain :  Window1.DEF  

* ------------------------------------------------------- */

NAME         Window1

DESCRIPTION  'Window1 Application'

EXETYPE      WINDOWS

STUB         'WINSTUB.EXE'

CODE         PRELOAD MOVEABLE DISCARDABLE

DATA         PRELOAD MOVEABLE MULTIPLE

HEAPSIZE     4096

STACKSIZE    8192

Для включения ресурсов в загрузочный модуль  приложения  используется текстовый файл описания ресурсов ( имя_ф.RC ). Файл описания ресурсов компилируется  утилитой RC.EXE в двоичный файл ( имя_ф.RES ).

В данных приложениях файл описания ресурсов не используется.

Объекты пользовательского интерфейса

ОС Windows имеет встроенную поддержку ряда объектов интерфейса: окон, органов управления, блоков диалога и т.д. Среди всех объектов наиболее важными являются окна. Любая программа, взаимодействующая с пользователем, должна иметь хотя бы одно окно. Именно через окно принимается ввод мыши  и клавиатуры и выполняется вывод на экран из программы.

Каждое  приложение Windows создает по крайней мере одно  окно, называемое главным окном. Большинство приложений создает также множество других окон, явно или неявно, для  выполнения задач, связанных с главным окном. Например, блоки диалога реализуются в виде набора  небольших окон внутри главного (или дочернего) окна.

Окно приложения Windows - это прямоугольная область  на  экране, в которой приложение производит вывод и получает ввод от пользователя. Окно разделяет экран с другими окнами, в том числе принадлежащим  другим приложениям. Только одно окно в текущий момент может получить ввод от пользователя (является активным).

Когда пользователь запускает прикладную программу, он ожидает появления ее окна. Для завершения работы с программой пользователь закрывает соответствующее окно.

Окно, созданное приложением, может иметь заголовок (title bar), меню (menu bar), системное меню (system menu), кнопку  минимизации (minimize box), кнопку максимизации (maximize box), границу размера (sizing border), клиентную область (client area), полосу горизонтальной прокрутки (horizontal scroll bar), полосу вертикальной прокрутки (verticalscrollbar).

System menu box    Title bar           Minimize box

/                  /      Menu bar    / Maximize box

/                  /         /        /   /

╔══╤══════════════════════════/════════╤══╤══╗

Похожие материалы

Информация о работе