- •В.В. Чуркин
- •Содержание
- •Ознакомление с Интегрированной Средой Разработки (иср)
- •Основное окно иср
- •Библиографический список
- •Занятие 1 Формы и компоненты Включение в проект новой формы
- •Размещение компонентов на форме
- •Депозитарий – хранилище форм и проектов
- •Задание 7. Опробовать режимы заимствования форм из Депозитария
- •Контрольные вопросы
- •Библиографический список
- •Занятие 2 Отладка приложений Компиляция и компоновка проекта
- •Сообщения компилятора и компоновщика
- •Действия в случае ошибки выполнения
- •Дальнейшие действия
- •Окно наблюдения Список Часов
- •Окно оценки и модификации Оценить|Изменить
- •Пошаговое выполнение приложения
- •Точки прерывания
- •Использование окна Инспектора Отладки
- •Другие средства отладки
- •Контрольные вопросы
- •Библиографический список
- •Занятие 3 Компоненты ввода и отображения текстовой информации
- •Компоненты Label, StaticText, Panel
- •Компоненты Edit, LabeledEdit, MaskEdit
- •Компоненты Memo, RichEdit
- •Компоненты ListBox, CheckListBox, ValueListEditor
- •Компонент StringGrid
- •Контрольные вопросы
- •Библиографический список
- •Занятие 4 Диаграммы и графики Компонент Chart
- •Компонент Image
- •Контрольные вопросы
- •Библиографический список
- •Контрольные вопросы
- •Библиографический список
- •Формирование квадратных матриц
- •Контрольные вопросы
- •Библиографический список
- •Кнопки, индикаторы, управляющие элементы
- •Управляющие кнопки Button и BitBtn
- •Кнопка с фиксацией SpeedButton
- •Группы радиокнопок − компоненты RadioGroup, RadioButton и GroupBox
- •Индикаторы CheckBox и CheckListBox
- •Ползунки и полосы прокрутки − компоненты TrackBar и ScrollBar
- •Заголовки − компоненты HeaderControl и Header
- •Таймер − компонент Timer
- •Календарь − компонент DateTimePicker
- •Панели и компоненты внешнего оформления
- •Панели общего назначения − компоненты Panel,
- •Многостраничные панели − компоненты TabControl,
- •Инструментальные панели − компоненты ToolBar и PageScroller
- •Перестраиваемые панели − компоненты CoolBar и ControlBar
- •Контрольные вопросы
- •Библиографический список
- •Занятие 8 Системные диалоги
- •Диалоги открытия и сохранения файлов – компоненты
- •Фрагменты диалогов – компоненты
- •Диалог выбора шрифта – компонент FontDialog
- •Диалоги выбора цвета – компоненты ColorDialog, ColorBox
- •Контрольные вопросы
- •Библиографический список
- •Занятие 9 Технология разработки приложений. Диспетчеризация действий
- •Диспетчеризация действий на основе компонента ActionList
- •Диспетчеризация действий на основе компонентов ActionManager, ActionMainMenuBar, ActionToolBar, CustomizeDlg
- •Контрольные вопросы
- •Библиографический список
- •Занятие 10 Динамически присоединяемые библиотеки dll Назначение dll
- •Статическое и динамическое связывание dll с приложением
- •Создание dll
- •Примеры статического и динамического связывания dll
- •Контрольные вопросы
- •Библиографический список
Ознакомление с Интегрированной Средой Разработки (иср)
C++Builder 6
Интегрированная Среда Разработки (Integrated Development Environment – IDE или ИСР) – это среда в которой есть все необходимое для быстрой разработки (проектирования) сложных прикладных программ (приложений) ИСР интегрирует в себе редактор кодов отладчик инструментальные панели редактор изображений инструментарий баз данных что позволяет проектировать запускать и тестировать приложения
Проекты C++Builder
Проект C++Builder состоит из форм модулей с их заголовочными файлами и файлами реализации установок параметров проекта ресурсов и тд Вся эта информация размещается в файлах Многие из этих файлов автоматически создаются C++Builder в процессе построения приложения:
Головной файл проекта (.cpp) |
C++Builder создает файл .cpp для головной функции WinMain, инициирующей приложение и запускающей его на выполнение |
Файл опций проекта (.bpr) |
Этот текстовый файл содержит установки опций проекта и указания на то какие файлы должны компилироваться и компоноваться в проект Файл сохраняется в формате XML |
Файл ресурсов проекта (.res) |
Двоичный файл содержащий ресурсы проекта: пикто-граммы курсоры и тп По умолчанию содержит только пиктограмму проекта Может дополняться с помощью Редактора Изображений |
Файл реализации модуля (.cpp) |
Каждой создаваемой пользователем форме соответствует текстовый файл реализации модуля используемый для хранения кода Пользователь может создавать модули не связанные с формами |
Заголовочный файл модуля (.h) |
Каждой создаваемой пользователем форме соответствует не только файл реализации модуля но и его заголовочный файл с описанием класса формы Пользователь может и сам создавать необходимые заголовочные файлы |
Файл формы (.dfm) |
Это двоичный или текстовый файл который C++Builder создает для хранения информации о фор- мах пользователя Пользователь может смотреть этот файл в текстовом виде или в виде формы Каждому файлу формы соответствует файл модуля (.cpp) |
Заголовочный файл компонента (.hpp) |
Файл создается при создании пользователем нового компонента Пользователю также часто приходится подключать к проекту эти файлы из библиотеки компонентов C++Builder расположенные в каталоге Include\VCL |
Файл группы проектов (.bpg) |
Текстовый файл создаваемый в C++Builder при созда-нии пользователем группы проектов |
Файлы пакетов (.bpl и .bpk) |
Эти двоичные файлы используются C++Builder при работе с пакетами: .bpl – файл самого пакета .bpk – файл определяющий компиляцию и компоновку пакета |
Файл рабочего стола проекта (.dsk) |
В этом текстовом файле C++Builder хранит информацию о последнем сеансе работы с проектом: открытых окнах их размерах и положении Благодаря этому файлу в новом сеансе работы пользователь сразу видит тот же экран который был в предыдущем сеансе Файл создается только при включении опции Опции автосохранения |Рабочий стол проекта ( на странице Предпочтения–многостраничного окна Опции среды общих настроек среды вызываемого командой Инструменты|Опции среды) |
Файлы резервных копий (.~bp, .~df, .~cp, .~h) |
Это соответственно файлы резервных копий для файлов проекта формы реализации модуля и заголовочного Если пользователь что-то безнадежно испортит в своем проекте он может соответственно изменить расширения этих файлов и таким образом вернуться к предыдущему не испорченному варианту |
Следующая группа файлов создается компилятором:
Исполняемый файл (.exe) |
Это исполняемый файл проектируемого приложения Он является автономным исполняемым файлом для которого больше ничего не требуется если только пользователь не использует библиотеки содержащиеся в пакетах DLL, OCX и тд |
Объектный файл модуля (.obj) |
Это откомпилированный файл модуля (.cpp) который компонуется в окончательный исполняемый файл |
Динамически присоединяемая библиотека (.dll) |
Этот файл создается в случае если пользователь проектирует свою собственную DLL |
Файл таблицы символов (.tds) |
Двоичный файл используемый отладчиком в процессе отладки приложения |
Файлы выбороч-ной компоновки (.il?) |
Файлы с расширением начинающемся с il (.ilc, .ild, .ilf, .ils), позволяют повторно компоновать только те файлы которые были изменены после последнего сеанса |
C++Builder может использовать файлы Windows:
Файлы справки (.hlp) |
Это стандартные файлы справки Windows, которые могут быть использованы приложением C++Builder |
Файлы изображе-ний или графичес-кие файлы (.wmf, .bmp, .ico) |
Эти файлы обычно используются в приложениях Win-dows для создания привлекательного и дружественного пользовательского интерфейса |
Из всех перечисленных файлов (а могут использоваться еще и другие) важнейшими являются файлы .cpp, .h, .dfm, .bpr, .res. Это файлы которые необходимо перенести на другой компьютер чтобы продолжить на нем работу над проектом Все остальные файлы C++Builder создаст автоматически в процессе компиляции проекта и его отладки
Главной частью приложения является головной файл .cpp (файл проекта исходный файл проекта) с функцией WinMain, с которой начинается выполнение программы и которая обеспечивает инициализацию других модулей Она создается и модифицируется C++Builder автоматически в процессе разработки приложения Имя которое дает пользователь файлу проекта когда сохраняет его становится именем исполняемого файла
Все изменения файла проекта при добавлении новых форм изменении имен форм и тп поддерживаются C++Builder автоматически Для просмотра исходного файла проекта надо выполнить команду Проект|Вид источника. Но обычно просмотр не требуется
Информация о формах C++Builder хранится в трех файлах: .dfm, .cpp, и .h. Информация о внешнем виде формы ее размерах местоположении на экране и тд хранится в файле с расширением .dfm, который по умолчанию имеет текстовый вид Для хранения файла формы в двоичном виде нужно щелкнуть на форме правой кнопкой мыши и во всплывшем меню выключить индикатор Текст DFM.
Основной файл с которым работает пользователь – это файл реализации модуля .cpp, в котором хранится код соответствующий данной форме В текстовом заголовочном файле с расширением .h хранится объявление класса используемой формы Весь основной текст этого файла C++Builder формирует автоматически по мере проектирования пользователем формы Но иногда требуется вручную вводить в этот файл объявления каких-то функций типов переменных В C++Builder заголовочный файл загружается в окно Редактора Кода автоматически
Имена всех файлов описывающих модуль одинаковы Это имя задает пользователь когда в первый раз сохраняет модуль
Рекомендуется создавать в приложении модуль не связанный с формой в который помещают описания типов констант переменных функций используемых другими модулями Это способствует хорошей структурированности программы поддерживает единое понимание типов констант переменных во всех модулях и уменьшает количество взаимных ссылок модулей друг на друга Тем самым упрощается модификация и сопровождение программы
Чтобы создать в проекте новый модуль не связанный с какой-либо формой надо выполнить команду Файл|Новый|Другое и в открывшемся многостраничном окне Новые элементы дважды щелкнуть на пиктограмме Модуль страницы Новый.
По окончании работы над проектом следует удалить вспомогательные файлы – .obj, .res, .tds, .il?, ~*. Объем файлов .tds может быть очень большим (мегабайты)