Главная страница
Навигация по странице:

  • 1.4 Компиляция и сборка проекта

  • 1.5 Репозиторий и шаблоны приложений Заготовки (шаблоны) проектов и их составных частей содержится в специальном хранилище –Репозитории

  • 1.7 Атрибуты приложения

  • Property

  • 1.8 Система помощи Класс TApplication позволяет организовать управление системой помощи на уровне всегоприложения.Свойство Property

  • Const

  • Function

  • Procedure

  • Implementation

  • ЛИТЕРАТУРА 1. Белянина, Н.В., Лабзина, Т.А.

  • Глазырина, И.Б.

  • Лабзина, Т.А., Корнеева, Е.В.

  • Кр вариант 3. Программирование. Основные данные о работе


    Скачать 279 Kb.
    НазваниеОсновные данные о работе
    АнкорКр вариант 3
    Дата31.05.2021
    Размер279 Kb.
    Формат файлаdoc
    Имя файлаПрограммирование.doc
    ТипКонспект
    #212089


    ОСНОВНЫЕ ДАННЫЕ О РАБОТЕ





    Версия шаблона

    1.1

    Вид учебного занятия

    Штудирование

    Название дисциплины

    Программирование

    Тема

    Программирование в среде MS Visual Studio





    Фамилия

    Белов

    Имя

    Валерий

    Отчество

    Юрьевич

    ID (номер контракта)

    0920119406557055


    Конспект




    Диалоговое окно параметров проекта состоит из нескольких вкладок. Параметров много.

    Рассмотрим те, которые используются наиболее часто.

    На вкладке Forms (рисунок 9) можно задать главную форму приложения (Main form) и в

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

    формой.

    Рисунок 9. Окно параметров проекта. Вкладка Forms

    На вкладке Application можно задать название (Title) программы. В среде Delphi

    дополнительно можно задать файл справки (Help file) и значок (Icon).

    На вкладке Compiler настраиваются параметры компилятора. Наиболее интересными из них

    являются переключатели Optimization (включает оптимизацию генерируемого кода) и Use Debug

    DCUs (позволяет отлаживать исходный код системных библиотек). Оба этих переключателя

    полезны при отладке программы: первый следует выключить, а второй – включить.

    На вкладке Compiler Messages настраивается чувствительность компилятора к

    подозрительному коду. Включив переключатели Show hints и Show warnings, можно получать от

    компилятора весьма полезные подсказки (hints) и предупреждения (warnings), а не только

    сообщения об ошибках.

    На вкладке Linker настраиваются параметры сборки проекта. Обладателям среды Delphi

    следует обратить внимание на группу Memory sizes, особенно на два параметра: Min stack size и

    Max stack size. Они задают, соответственно, минимальный и максимальный размеры стека

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

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

    На вкладке Directories/Conditionals можно задать каталоги для различных файлов. Наиболее

    важные из них: Output directory – каталог, в который помещается выполняемый файл; Unit output

    16

    directory – каталог, в который помещаются промежуточные объектные модули (dcu-файлы); Search

    path – список каталогов, в которых осуществляется поиск программных модулей.

    На вкладке Version Info выводится информация о версии приложения. Для того чтобы эта

    информация помещалась в выполняемый файл, нужно включить переключатель Include version

    information in project. Номер версии задается в виде четырех чисел: Major version – старший номер

    версии программы (его обычно увеличивают при внесении в программу концептуально новых

    возможностей); Minor version – младший номер версии программы (его обычно увеличивают при

    незначительном расширении функциональных возможностей программы); Release – номер

    выпуска программы, которая отлажена и пригодна к использованию заказчиком; Build –

    порядковый номер сборки проекта (он автоматически увеличивается на единицу при компиляции

    проекта, если включен переключатель Auto-increment build number). Все эти параметры несут

    лишь информативный характер и не влияют на работу самой программы. Однако информация о

    версии может использоваться специальными программами установки пользовательских программ

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

    На вкладке Packages можно управлять списком пакетов, используемых в проекте. Пакеты –

    это внешние библиотеки компонентов, они рассмотрены в главе 5. Переключатель Build with

    runtime packages позволяет существенно уменьшить размер выполняемого файла за счет

    использования внешних библиотек компонентов вместо встраивания их кода непосредственно в

    выполняемый файл. Этот режим выгоден при создании нескольких программ, построенных на

    базе большого количества общих компонентов.

    Когда все параметры проекта установлены, можно приступать к его компиляции.
    1.4 Компиляция и сборка проекта

    Компиляция и сборка проекта могут выполняться на любой стадии разработки проекта. Под

    компиляцией понимается получение объектных модулей (dcu-файлов) из исходных текстов

    программных модулей (pas-файлов). Под сборкой понимается получение выполняемого файла из

    объектных модулей. В среде Delphi компиляция и сборка проекта совмещены.

    Для выполнения компиляции достаточно выполнить команду меню Project | Compile <Имя

    проекта> или нажать комбинацию клавиш Ctrl+F9. При этом компилируются все исходные

    модули, содержимое которых изменялось после последней компиляции. В результате для каждого

    программного модуля создается файл с расширением dcu (сокр. от Delphi Compiled Unit). Затем

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

    имя которого совпадает с именем проекта. Компилятор среды Delphi выбрасывает из

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

    Существует особый вид компиляции и сборки – полная принудительная компиляция всех

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

    выполняемого файла. При этом неважно, вносились в них изменения после предыдущей

    компиляции или нет. Полная компиляция проекта выполняется с помощью команды главного

    меню Project | Build <Имя проекта>. В результате тоже создается выполняемый файл, но на это

    тратится немного больше времени.

    Выполнить созданное приложение можно с помощью команды меню Run | Run или клавиши

    F9. Перед выполнением будет автоматически повторен процесс компиляции (если в проект

    вносились изменения), и после его успешного завершения приложение запустится на выполнение.
    1.5 Репозиторий и шаблоны приложений

    Заготовки (шаблоны) проектов и их составных частей содержится в специальном хранилище –

    Репозитории. Основная цель создания Репозитория – предоставление разработчику возможности

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

    найти готовое стандартное приложение, динамическую библиотеку, форму, модуль и т.д.

    Программист может настроить Репозиторий в соответствии с собственными потребностями:

    удалить ненужные шаблоны и добавить собственные.

    Репозиторий можно открыть при помощи команды New | Other меню File. Он представляет

    собой многостраничный блокнот, на страницах которого сгруппированы значки шаблонов прое-

    ктов (рисунок 10).

    Рисунок 10. Репозиторий Delphi

    Состав объектов Репозитория можно обновлять, также можно создавать, переименовывать

    страницы и изменять состав объектов для них. Редактирование Репозитория осуществляется при

    помощи диалогового окна Object Repository, которое появляется при выборе команды Repository

    меню Tools или при выборе команды Properties всплывающего меню Репозитория. Новую форму в

    Репозиторий можно добавить командой Add to Repository из меню Ргоject, командой Add to

    Repository из всплывающего меню формы или перетаскиванием формы в окно Репозитория.

    Основные типы проектов собраны на странице New.

    Для созданий новой группы проектов используется значок Project Group. В отличие от обыч-

    ного приложения в составе группы, появляющегося в среде разработки сразу после загрузки, соз-

    данная при помощи Репозитория группа проектов не имеет в своем составе ни одного приложения.

    Стандартное приложение создается при помощи значка Application. Это самый

    распространенный тип проекта.

    Для разработки динамических библиотек используется значок DLL.

    Значок Web Server Application позволяет создать приложение (исполняемый файл или дина-

    мическую библиотеку) для работы под управлением Web-сервера для использования в Internet.

    18

    Значок Component открывает новый проект, в котором можно создать собственный компонент.

    После щелчка на значке появляется специальный диалог, в котором необходимо задать параметры

    будущего компонента.

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

    таких приложений создается в Репозитории при помощи значка Thread Object. Возможности

    потока инкапсулированы в классе TThread.

    Во время работы с проектом при помощи Репозитория можно создавать новые модули (значок

    Unit), формы (значок Form), модули данных (значок Data Module), печатные отчеты (значок

    Report).

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

    пакета начинается после щелчка на значке Package.

    Все ресурсы приложения можно перенести в специальную динамическую библиотеку

    ресурсов. Для ее создания используется значок Resource DLL Wizard.

    В качестве дополнительных возможностей в Репозитории можно создать файл сценария с

    расширением Bat (значок Batch File) и простой файл (значок Техt).

    Страница ActiveX обеспечивает разработку приложений на основе технологии СОМ и

    технологий, базирующихся на ней.

    Страница Multitier предназначена для хранения объектов, необходимых для создания

    многоуровневых приложений на основе технологии Midas.

    Страница Forms содержит шаблоны для часто используемых и сложных в создании форм,

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

    Страница Dialogs содержит шаблоны стандартных диалогов, предназначенных для

    построения стандартных интерфейсов.

    Страница Projects позволяет очень быстро создать заготовку приложения с одним из четырех

    типов стандартных интерфейсов.

    На странице Data Modules можно разместить готовые модули данных для часто используемых

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

    проектов для работы с базами данных.

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

    процесс создания сложных программных объектов.
    1.6 Класс TApplication

    Приложение, работающее в операционной системе Windows, должно уметь выполнять ряд

    важных операций. Это обработка очереди сообщений, использование системных ресурсов,

    взаимодействие с файловой системой и т.д.

    В библиотеке визуальных компонентов Delphi свойства и функции приложения Windows

    реализованы в классе TApplication, который является прямым потомком класса TComponent.

    Создание экземпляра класса при помощи конструктора соответствует запуску исполняемого

    файла приложения. Ключевые методы класса обеспечивают создание, инициализацию,

    выполнение и уничтожение приложения. Дополнительные методы позволяют разработчику

    эффективно управлять поведением приложения в целом.

    19

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

    переменную Var Application: TApplication.

    Пример использования этой переменной имеется в каждом проекте приложения и

    представлен в листинге файла проекта:

    program Project1;

    uses Forms,

    Unit1 in 'Unit1.pas' {Form1},

    Unit2 in 'Unit2.pas' {AboutBox};

    {$R *.res}

    begin

    Application.Initialize;

    Application.CreateForm(TForm1, Form1);

    Application.CreateForm(TAboutBox, AboutBox);

    Application.Run;

    end.

    В файле проекта стандартного приложения переменная Application используется для вызова

    следующих методов:

    Метод Initialize используется для инициализации приложения.

    Методы CreateForm применяются для создания форм приложения.

    Метод Run осуществляет запуск приложения. В нем включается обработчик очереди сооб-

    щений метода HandleMessage, который выполняется до момента завершения работы приложения.

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

    автоматически. Разработчик может изменять код файла проекта по своему усмотрению. При этом

    могут быть использованы свойства и методы класса TApplication.

    1.7 Атрибуты приложения

    Приложение, функционирующее в операционной системе Windows, должно удовлетворять

    ряду требований. Помимо разнообразных программных аспектов, такое приложение должно иметь

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

    свойства реализованы в классе TApplication.

    Дескриптор главного окна приложения (этот указатель играет важную роль при

    использовании многих системных функций) содержится в свойстве
    Property Handle: HWND;

    Объектный тип, указывающий на экземпляр класса главной формы приложения, представлен

    в свойстве
    Property MainForm: TForm;

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

    отображается в заголовке главного окна программы, содержится в свойстве
    Property: Icon: TIcon;

    Свойство

    20
    Property: Title: String;

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

    Для сворачивания приложения достаточно вызвать метод Minimize, для восстановления

    исходного состояния применяется метод Restore.
    1.8 Система помощи

    Класс TApplication позволяет организовать управление системой помощи на уровне всего

    приложения.

    Свойство
    Property: HelpFile: String;

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

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

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

    будет использовано это свойство. Если свойство HelpFile не задать, то помощь в таком

    приложении просто не будет работать.

    Можно вызвать нужную тему контекстной подсказки при помощи метода HelpContext. Его

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

    ситуации:
    Const SomeTopic1 = 41;

    SomeTopic2 = 42;



    If CheckBox1.Checked Then Application.HelpContext(SomeTopic1)
    Else Application.HelpContext(SomeTopic2);
    В параметре метода задается идентификатор темы помощи.

    При обращении к системе помощи из приложения вызывается метод-обработчик OnHelp, в

    котором можно предусмотреть выполнение необходимых дополнительных операций. Для этого в

    какой-либо форме создается метод, параметры которого соответствуют методу-обработчику:
    Function TForm1.HelpFileControl(Command: Word; Data: Longint;

    Var CallHelp: Boolean): Boolean;

    Begin

    If Application.HelpFile = ‘ ‘ Then

    If HelpFileDialog.Execute Then

    Application.HelpFile := HelpFileDialog.FileName;

    End;
    Здесь осуществляется проверка имени файла помощи для приложения и, в случае его

    отсутствия, вызывается диалог выбора файла (см. главу 3). Затем в методе-обработчике OnCreate

    этой формы переменной процедурного типа класса приложения присваивается созданный метод:

    Procedure TForm1.FormCreate(Sender: TObject);
    Begin

    Application.OnHelp := HelpFileControl;

    End;
    21

    Эту же операцию можно выполнить и в файле проекта, но обязательно после создания формы:

    Application.Initialize;

    Application.CreateForm(TForm1, Form1);

    Application.OnHelp := Form1.HelpFileControl;

    Application.Run;
    1.9 Обработка сообщений

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

    щений. Для их обработки в каждом приложении Windows предусмотрен специальный механизм.

    В подавляющем большинстве случаев у разработчика нет необходимости что-либо изменять в нем.

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

    Если выполнение операции занимает длительнее время, то разработчик должен преду-

    смотреть вывод информации о состоянии процесса и возможность его прерывания. Для этого

    можно использовать метод ProcessMessages, который осуществляет обработку входной очереди

    сообщений.

    Рассмотрим небольшой пример. Пусть при щелчке на кнопках Btn1 и Btn2 осуществляется

    расчет таблицы умножения от 1 до 100. В процессе расчета его текущее состояние должно

    отображаться на индикаторе ProgressBar. Пользователь должен иметь возможность прервать

    выполнение операции (форма на рисунке 11).

    Рисунок 11. Главная форма проекта DemoProcessMSG

    Исходный код, работающий при щелчке на кнопке Btn1, не сможет выполнить поставленные

    условия в полном объеме, так как цикл обработки данных не передает управление до момента

    окончания работы.

    Компонент TProgressBar разработан таким образом, что каждый вызов метода StepIt не только

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

    зовании в подобных циклах компонент успешно показывает ход выполнения операции.

    Исходный код, работающий при щелчке на кнопке Btn2, после каждого умножения передает

    управление методу ProcessMessages, который обрабатывает входную очередь сообщений для при-

    ложения.

    22

    Код обработчиков событий:

    Implementation

    {$R *.DFM}

    Procedure TMainForm.Btn1Click(Sender: TObject);

    Var i, j, x : Integer;

    Begin

    ProgressBar.Position := 0;

    For i := 1 To 100 Do

    For j := 1 To 100 Do

    Begin

    x := i * j;

    ProgressBar.StepIt;

    If CheckBox.Checked Then Abort;

    End;

    End;

    Procedure TMainForm.Btn2Click(Sender: TObject);

    Var i, j, x : Integer;

    Выводы




    Большинство приложений Windows обеспечивают взаимодействие с пользователем при

    помощи совокупности элементов управления, размещенных в одном или нескольких окнах. Ввод

    и отображение данных, управляющие воздействия пользователя, отображение состояния

    приложения и отдельных процессов – все эти операции выполняются с активным использованием

    окон приложения.

    Стандартный проект в Delphi обычно состоит из форм. Форма – это окно приложения на этапе

    разработки. Каждую форму описывают два файла – файл формы, описывающий свойства формы и

    размещенных на ней компонентов, и модуль, содержащий описание экземпляра класса формы и

    исходный код.

    Свойства и поведение окна инкапсулированы в классе TForm, который является отдаленным

    потомком класса TWinControl. Благодаря возможностям своих предков окно приложения Delphi не

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

    компонентов, организуя управление ими на этапах разработки и выполнения.

    Важность класса формы определяется двумя основными аспектами. С точки зрения создания

    исходного кода, класс формы объединяет все размещенные на ней компоненты и обеспечивает

    хранение программной логики, реализованной в процедурах и функциях. С точки зрения

    разработки приложения в целом, создание экземпляров классов форм на этапе загрузки

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

    Логическая схема / Классификация



    Глоссарий





    п/п

    Понятие

    Определение

    1

    Add

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

    2

    Controls

    свойство, с помощью которого можно получить доступ из

    формы к любому элементу управления, расположенному на

    форме

    3

    PasteFromClipboard

    метод, который заменяет выделенный текст содержимым

    Clipboard, а если нет выделенного текста, копирует содержимое

    Clipboard в позицию текстового курсора


    Каталог личной библиотеки




    ЛИТЕРАТУРА

    1. Белянина, Н.В., Лабзина, Т.А. Программирование в среде Delphi. [Электронный ресурс]:

    рабочий учебник/ Белянина, Н.В., Лабзина, Т.А. - 2012. - http://lib.muh.ru.

    2. Глазырина, И.Б. Введение в программирование. [Электронный ресурс]: рабочий учебник/

    Глазырина, И.Б. - 2011. - http://lib.muh.ru.

    3. Глазырина, И.Б. Динамические структуры. [Электронный ресурс]: рабочий учебник/

    Лабзина, Т.А. - 2011. - http://lib.muh.ru.

    4. Глазырина, И.Б. Модульное программирование.[Электронный ресурс]: рабочий учебник/

    Глазырина, И.Б. - 2011. - http://lib.muh.ru.

    5. Глазырина, И.Б. Основные типы данных в Турбо Паскале. [Электронный ресурс]: рабочий

    учебник/ Глазырина, И.Б. - 2011. - http://lib.muh.ru.

    6. Лабзина, Т.А., Корнеева, Е.В. Введение в программирование в Delphi. [Электронный

    ресурс]: рабочий учебник/ Лабзина, Т.А., Корнеева, Е.В. - 2012. - http://lib.muh.ru.

    7. Львович И.Я. Основы информатики [Электронный ресурс]: учебное пособие/ Львович

    И.Я., Преображенский Ю.П., Ермолова В.В.— Электрон. текстовые данные.— Воронеж:

    Воронежский институт высоких технологий, 2014.— 339 c. http://www.iprbookshop.ru/23359.—

    ЭБС «IPRbooks»







    написать администратору сайта