Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Руководство пользователя 26 страница



Структура Windows

─────────────────────────────────────────────────────────────────

 

На этапе выполнения функциональные возможности Windows и ее

API сосредоточены в трех библиотечных модулях, вызываемых работа-

ющими в данный момент приложениями. Это следующие модули Windows:

 

* KERNEL.EXE - управляет распределением памяти и ресурсов,

выполняет планирование и взаимодействие с DOS.

 

* GDI.EXE - выводит на экран и на принтер графику.

 

* USER.EXE - работает с окнами, вводом данных от пользовате-

ля и коммуникациями.

 

Эти модули являются компонентами распространяемой версии

Windows, поэтому пользователи Windows могут найти их на своих

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

ли; он не включают их.

 

Взаимодействие с Windows и DOS

─────────────────────────────────────────────────────────────────

 

Из-за ограниченного масштаба операционной системы DOS легко

предвидеть, как будет влиять DOS на успешное выполнение ваших

прикладных программ. Тем не менее, программа для DOS работает

благодаря взаимодействию между вашей программой и средствами опе-

рационной системы.

 

Аналогичное правило действует для программы Windows. Пос-

кольку Windows предлагает значительно большее число функциональ-

ных вызовов операционной системы, взаимодействие между Windows и

вашей программой отследить значительно труднее. Например, чтобы

вывести графику на экран, ваша программа должна вызвать функцию

GDI Windows. Для реакции на нажатие пользователем кнопки "мыши"

программа должна определять метод реакции (ответа) на сообщение.

Ваша программа должна непрерывно взаимодействовать с операционной

системой (DOS + Windows).

 

 


 

B.Pascal 7 & Objects /UG - 254 -

 

Элементарная программа

─────────────────────────────────────────────────────────────────



 

Традиционным введением в новый язык программирования или

операционную среду является программа, выводящая сообщение

"Hello, Word!", написанная на данном языке или для данной опера-

ционной среды. Это программа содержит количество программного ко-

да, достаточное для вывода на экран строки "Hello, Word!".

 

Конечно, в Windows нужно сделать значительно больше. Вам

нужно вывести окно, записать в него текст и сделать так, чтобы

окно взаимодействовало с "окружающим миром", по крайней мере вы

должны иметь возможность закрыть окно и выйти. Если вы будете де-

лать все это с самых основ, то даже для выполнения этих элемен-

тарных задач потребуется очень большой объем кода. Например,

программа GENERIC.PAS, содержащаяся на дистрибутивных дисках, вы-

полняя такие элементарные действия, занимает более 100 строк.

 

Это связано с тем, что предъявляет к прикладной программе

ряд требований, которые та должна удовлетворять перед тем, как

она сможет работать в Windows. Даже простейшая программа требует

большого объема исходного кода. К счастью, программы, написанные

с использованием ObjectWindows, автоматически удовлетворяют этим

требованиям (включая создание и вывод на экран основного окна и

сохранение для приложения описателя окна). Таким образом, прог-

рамма "Hello, Word!" сокращается всего до 16 строк.

 

program HelloApp;

 

uses WObjects;

 

type

THelloWord = object(TApplication)

procedure InitMainWindow; virtual;

end;

 

procedure THelloWord.InitMainWindow;

begin

MainWindow:= New(PWindow,

Init(nil, 'Hello, Borland Pascal'));

end;

 

var HelloWord: THelloWord;

 

begin

HelloWord.Init('HelloWord');

HelloWord.Run;

HelloWord.Done;

end.

 

Действия программы при запуске

 

При запуске программа ObjectWindows должна сначала получить


 

B.Pascal 7 & Objects /UG - 255 -

 

от Windows четыре значения и сохранить их в соответствующих гло-

бальных переменных. (Это происходит автоматически, но если бы вы

писали программу, не используя ObjectWindows, то пришлось бы об

этом позаботиться.)

 

* В HInstance сохраняется описатель экземпляра программы.

 

* В HPrevInst сохраняется описатель последнего экземпляра

той же прикладной программы.

 

* В CmdShow записывается целое значение, представляющее на-

чальный режим вывода основного окна. Оно используется для

вызова метода Show.

 

* В CmdLine записывается командная строка вызова прикладной

программы, включая параметры и имя файла, например

"CALC.EXE /M" или "WORDPROC.EXE LETTER1.DOC".

 

Как приложение ObjectWindows, программа HelloApp должна

строить и инициализировать объект основного окна. Она может ини-

циализировать только первый экземпляр HelloApp с помощью метода

InitApplication, либо инициализировать каждый экземпляр HelloApp

с помощью метода InitInstance.

 

HelloApp начинает цикл сообщения, вызывая метод Run. Нако-

нец, она завершается путем освобождения объекта прикладной прог-

раммы с помощью метода Done.

 

Назначение основного окна

 

Основное окно прикладной программы - это окно первоначально-

го вывода прикладной программы при ее запуске. Оно отвечает за

представления пользователю списка доступных команд (меню). Во

время сеанса работы с прикладной программой основное окно управ-

ляет интерфейсом прикладной программы и во многих случаях являет-

ся единственной рабочей областью программы, создавая, когда это

требуется, диалоговые окна. Другие, более сложные приложения, мо-

гут использовать в качестве рабочих областей несколько окон. Ког-

да пользователь закрывает основное окно, он инициализирует про-

цесс закрытия прикладной программы.

 

 


 

B.Pascal 7 & Objects /UG - 256 -

 

Цикл разработки прикладной программы

─────────────────────────────────────────────────────────────────

 

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

программам Windows (например, инициализация основного окна) вам

будет легче всего начать писать программу, используя существующее

приложение Windows и приспосабливая его для своих нужд. В

ObjectWindows вы можете найти много примеров программ. Выберите

для своего приложения наиболее подходящую.

 

Используя в Windows интегрированную интерактивную среду раз-

работки программ, вы значительно сократите время разработки. Бла-

годаря многозадачным возможностям Windows, вы можете запустить

IDE, Resource Workshop и свою прикладную программу одновременно.

Поставляемые с Borland Pascal for Windows инструментальные средс-

тва не только облегчают каждую задачу, но и сокращают число задач

при разработке приложения Windows. По существу, это процесс можно

сократить до следующих нескольких шагов:

 

1. Создание исходного кода программы и включение в программу

имен файлов ресурсов, которые будут использоваться по ди-

рективе {$R имя_файла}.

 

2. Создание ресурсов для диалоговых окон, меню и т.д.

 

3. Компиляция программы.

 

4. Интерактивная отладка программы.

 

Изучение ObjectWindows

─────────────────────────────────────────────────────────────────

 

Теперь, когда вы поняли основы программирования в Windows и

имеете начальные сведения об ObjectWindows, можете начинать прог-

раммировать. Начните с чтения "Руководства по программированию с

использованием ObjectWindows" и шаг за шагом изучите, как разра-

батывать приложение ObjectWindows.

 


Дата добавления: 2015-09-30; просмотров: 28 | Нарушение авторских прав







mybiblioteka.su - 2015-2024 год. (0.014 сек.)







<== предыдущая лекция | следующая лекция ==>