Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009 (960530), страница 80
Текст из файла (страница 80)
При сохранении проекта поддругим именем соответственно должно быть изменено и имя проекта в команде меню.Скомпилировать проект для получения приложения можно на любой стадии разработки проекта. Это удобно для проверки вида и правильности функционирования отдельных компонентов формы, а также для тестированияфрагментов создаваемого кода.
При компиляции проекта выполняются действия, приведенные ниже.• Компилируются файлы всех модулей, содержимое которых изменилосьсо времени последней компиляции. Если исходный текст модуля по каким-либо причинам недоступен компилятору, то он не перекомпилируется.• Если в модуль были внесены изменения, то перекомпилируется не только этот модуль, но и модули, использующие его с помощью директивыпрепроцессора #include.• Перекомпиляция модуля происходит также при изменениях объектного файла (расширение obj) или подключаемого файла, используемых данным модулем.382Часть 3. Современные СУБД и их применение• После компиляции всех модулей проекта компилируется файл проектаи создается исполняемый файч приложения с именем файла проекта.Помимо компиляции, может быть выполнена также сборка проекта.
Присборке компилируются все файлы, входящие в проект, независимо от того,были в них внесены изменения или нет. Для сборки проекта предназначенакоманда P r o j e c t \ B u i l d < P r o j e c t 1 > ( П р о е к т \ С о б р а т ь < П р о е к т 1 > ) .Запустить проект на выполнение можно как в среде С++ Builder, так и всреде Windows.Выполнение проекта в среде С + + Builder осуществляется командойR u n \ R u n или нажатием клавиши <F9>. При этом созданное приложение начинает свою работу. Если в файлы проекта вносились изменения, то предварительно выполняется компиляция проекта.С помощью команды R u n \ M a k e задается компиляция и сборка проектабез немедленного выполнения приложения (полученного файла с расширением .ехе).
По существу именно последним (отсутствием запуска приложения) и отличается действие команды M a k e от команды R u n .Запущенное приложение работает так же, как и запущенное вне среды С++Builder, однако имеются некоторые особенности:• нельзя запустить вторую копию приложения;• продолжить разработку проекта можно только после завершения работы приложения;• при зацикливании (зависании) приложения его завершение необходимо в ы п о л н я т ь с р е д с т в а м и С + + B u i l d e r с п о м о щ ь ю к о м а н д ыRun\Program Reset (Выполнение\Перезапуск п р о г р а м м ы ) и л и ком-бинации клавиш < C t r l > + < F 2 > .Для отладки приложений в среде С++ Builder можно использовать средства отладчика. В среде Windows созданное приложение можно запустить, каклюбое другое приложение, например, с помощью Проводника.1 1 .
4 . Разработка п р и л о ж е н и яС++ Builder относится к системам визуального программирования, называемым также системами RAD (Rapid Application Development, быстрая разработка приложений). Разработка приложения в С++ Builder включает двавзаимосвязанных этапа:• создание пользовательского интерфейса приложения;• определение функциональности приложения.Пользовательский интерфейс приложения определяет способ взаимодействияпользователя и приложения, т. е. внешний вид формы (форм) при выполненииприложения и то, каким образом пользователь управляет приложением. Интер-/ I.
Borland С++ Builder383фейс конструируется путем размещения в форме компонентов, называемых интерфейсными компонентами или элемегипами управления. Создается пользовательский интерфейс приложения с помощью окна Ф о р м ы , которое в среде разработки представляет собой модель формы времени выполнения.Ф у н к ц и о н а л ь н о с т ь п р и л о ж е н и я о п р е д е л я е т с я п р о ц е д у р а м и , к о т о р ы е ВЫ-ПОЛНЯЮТСЯ при возникновении определенных событий, например, происходящих при действиях пользователя с элементами управления формы.Таким образом, в процессе разработки приложения в форму помещаютсякомпоненты, для них устанавливаются необходимые свойства и создаютсяобработчики событий.ПримерпростейшегоприложенияСоздадим для примера простейшее приложение. Слово «создадим» в данном случае является не совсем точным, т.
к. создавать и тем более программировать не придется вообще ничего: С + + Builder изначально предоставляетготовое приложение, состоящее из одной формы.Сразу же после создания нового приложения С + + Builder предлагает разработчику «пустую» форму. Данная форма не является пустой в буквальномсмысле слова — она содержит основные элементы окна Windows: заголовокForml, кнопки сворачивания, разворачивания и закрытия окна, измененияразмеров окна и кнопку вызова системного меню окна.
Именно эта формаотображается при первом запуске С + + Builder в окне формы.Любое приложение Windows выполняется в соответствующем окне. Дажеесли оно ничего не делает в смысле функциональности, т. е. является пустым,то все равно должно иметь свое окно.
С++ Builder — это среда разработкиприложений под Windows, поэтому для любого разрабатываемого приложения автоматически предлагается окно (форма), для которой уже созданы двафайла — с описанием и модулем.Итак, простейшее приложение создается автоматически каждый раз в начале работы над новым проектом и является отправной точкой для дальнейших действий. Это приложение имеет минимум того, что нужно любому приложению, выполняемому в среде Windows, и ни одним элементом больше.Простейшее приложение представляет из себя заготовку или каркас, обеспечивающий разработчика всем необходимым для каждого приложения вообще.
Так, не нужно писать свой обработчик событий клавиатуры или драйвер мыши, а также создавать пакет процедур для работы с окнами. Более того,нет необходимости интегрировать драйвер мыши с пакетом для работы с окнами. Это все уже выполнено создателями С++ Builder, и каркас приложенияпредставляет собой полностью завершенное и функционирующее приложение, которое никаких действий не производит.Отметим, что окно (а вместе с ним и приложение) действительно ничегоне делает с точки зрения пользователя — оно не предоставляет функциональ-Часть 3. Современные СУБД и их применение384ности, специфичной для каждого приложения. Вместе с тем это пустое окновыполняет достаточно большую работу с точки зрения программиста.
Например, оно ожидает действий пользователя, связанных с мышью и клавиатурой, и реагирует на изменение своего размера, перемещение, закрытие и некоторые другие команды.В полной мере оценить эти возможности окна может только программист,который писал приложения под Windows традиционным способом, т. е. вручную и без IDE. Изнутри Windows представляет собой систему с индексами,контекстами, обратными вызовами и множеством других сложнейших элементов, которые надо знать, которыми нужно управлять и в которых легко запутаться. Однако поскольку эти элементы имеются в каждом функционирующемприложении Windows, достаточно написать их один раз и в дальнейшем ужепользоваться готовыми блоками.
Именно это и осуществляет система С + +Builder, избавляя тем самым программиста от сложной рутинной работы.При компиляции проекта молено использовать специальные пакеты динамически загружаемых библиотек (DLL), что позволяет в значительной степени уменьшить размер приложения. Однако при этом приложение уже неявляется автономным и в процессе своей работы обращается к пакетам, которые были задействованы при компиляции проекта.При конструировании приложения разработчик добавляет к простейшему приложению новые формы, управляющие элементы, а также новые обработчики событий.СозданиепользовательскогоинтерфейсаПользовательский интерфейс приложения составляют компоненты, которые разработчик выбирает в Палитре компонентов и размещает в форме. Приконструировании интерфейса приложения действует принцип W Y S I W Y G( W h a t You See Is W h a t You Get — «что видите, то и получаете»), и разработчик при создании приложения видит форму почти такой же, как и при еговыполнении.Компоненты являются структурными единицами и делятся на визуальные (видимые) и невизуальные (системные).
При этом понятия «видимый»и «невидимый» относятся только к этапу выполнения, на этапе проектирования видны все компоненты приложения.К визуальным компонентам относятся, например, кнопки, списки или переключатели, а также собственно форма. Так как с помощью визуальных компонентов пользователь управляет приложением, их также называют управляющими компонентами или элементами управления. Именно визуальныекомпоненты образуют пользовательский интерфейс приложения.К невизуальным компонентам относятся компоненты, выполняющие вспомогательные, но не менее важные действия, например, таймер Timer (позволяет отсчитывать интервалы времени)./ I.