Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Разработка Windows - приложений в среде Borland. Учебное пособие
.pdf
РОССИЙСКИЙ НОВЫЙ УНИВЕРСИТЕТ
___________________________________________________________
В.И. МАСЛЯНКИН
РАЗРАБОТКА WINDOWS - ПРИЛОЖЕНИЙ
В СРЕДЕ BORLAND
УЧЕБНОЕ ПОСОБИЕ
Для студентов факультета информационных систем и
компьютерных технологий по специальности «Прикладная
информатика в экономике»
Москва
2007

УДК 004.451.9 (075.8)
ББК 32.973.26–018.2 я 73
М 31
Рецензенты:
Кандидат технических наук, доцент московского психолого-социального
института Д.В.Голованов
Доктор физико-математических наук, профессор Российского нового
университета И.С. Клименко
Одобрено Научно-методическим советом
Российского нового университета
Маслянкин В.И.
М 31 Разработка Windows - приложений в среде Borland: Учебное
пособие. – М.: РосНОУ, 2007. – 200 с.
Данное учебное пособие по разработке программ на языке С/С++ для систем Windows с использованием бибилиотеки Borland OWL является простым и
доступным для широкого круга читателей. Впособии приводится необходимая
информация об основныхклассах библиотеки и их компонентах; рассматриваются базовые принципы и этапы создания приложений Windows на основе
диалога. Пособие содержит большое количество практических примеров
Предназначено, главным образом, для начинающих программистов, студентов вузов, аспирантов и преподавателей.
УДК 004.451.9 (075.8)
ББК 32.973.26–018.2 я 73
© В.И. Маслянкин
ISBN
© РосНОУ, 2007
.
2

СОДЕРЖАНИЕ
стр.
Введение ……………………………………………………….. 5
ГЛАВА I. СОЗДАНИЕ ПРОСТОГО ПРИЛОЖЕНИЯ …...…. 7
Постановка задачи. Представление данных …………………. 7
Разработка проекта WINDOWS – приложения ……………… 8
Описание данных ……………………………………………… 12
Добавление элементов интерфейса …………………………... 13
Структура приложения ………………………………………... 20
Доработка проекта. Дополнительные элементы интерфейса . 26
ГЛАВА II. КЛАССЫ, КОНТЕЙНЕРЫ И АЛГОРИТМЫ …... 38
Класс STAFF …………………………………………………... 38
Снова комбинированный список ……………………...……… 43
Контейнеры. Редактирование ………………………………… 45
Алгоритмы. Сортировка и поиск …………………………….. 49
Файлы …………………………………………………………... 62
Завершение работы ……………………………………………. 66
ГЛАВА III. РЕСУРСЫ, ОКНА, ДИАЛОГИ ……………...….. 69
Меню и акселераторы …………………………………………. 69
Клавиши и
акселераторы ………………………………..……. 81
Параметры окна. Иконки …………………………….……….. 89
Стандартные диалоги …………………………………………. 96
Диалоговое окно сообщений – MessageBox ………………….
Диалог TInputDialog ……………………………………….……..
Диалоги открытия и сохранения файлов ………………..….
96
98
101
Разработка модального диалога …………………………….... 104
О себе, любимом ………………………………………………….
Вывод статистических данных. Шрифты. Диаграммы ...
104
107
Обмен данными. Буфер обмена (передачи) …………………. 123
ГЛАВА IV. ЭЛЕМЕНТЫ УПРАВЛЕНИЯ ……………….….. 130
Общие характеристики элементов управления ………….….. 130
Командная кнопка …………………………………………….. 135
Надпись и редактируемое поле ………………………………. 135
Список и комбинированный список
…………………………. 136
Флажки и переключатели (радиокнопки) ………………….… 139
Рисунки ……………………………………………………….... 141
3

Изменение свойств элементов из программы ……………….. 147
Индексация состояния программы. Строка состояния. Указатель мыши. Индекатор процесса ……………………….…... 159
Просмотор списка (элемент List View) ………………...…….. 166
Элементы вкладки Common – счетчик, ползунок, вкладки … 185
Контекстное меню …………………………………………….. 191
Всплывающие подсказки …………………………………...… 195
ЛИТЕРАТУРА ……………………………………………...…. 198
4

ВВЕДЕНИЕ
Данное учебное пособие предназначено для студентов, изучающих дисциплины «информатика», «информатика и программирование», «алгоритмизация и программирование», «высокоуровневые методы информатики и программирования», «визуальное программирование», «программирование», «технология программирования» и т.п., желающим освоить базовые принципы разработки
Windows-приложений. В качестве одной из форм контроля, полученных при изучении указанных
предусмотрена разработка студентом самостоятельного курсового
проекта. Типичным для подобного курсового проектирования является реализация информационно-поисковой системы или рабочего
места специалиста. При этом требуется решить следующие стандартные задачи:
- хранение основной информации в одном или нескольких
связанных файлах;
- обеспечение возможности ввода, удаления и корректировки
данных;
- поддержка поиска и выборки информации;
- сортировка данных по различным критериям и т.п.
Примерными темами курсовых проектов могут являться:
- «Биржа труда»;
- «Справочник абитуриента»;
- «Отдел кадров предприятия»;
- «Библиотека»;
- «Справочник сомелье»;
- «Справочник военкома»;
- «Серпентарий» и т.д.
В пособии
сового проекта в интегрированной среде Borland C++ 5, приводится
пример реализации простой базы данных, предназначенной для работы в среде WINDOWS. Основное внимание уделяется вопросам
создания интерфейса пользователя с применением библиотеки OWL
(Object Windows Library), а также решению указанных выше стандартных задач (ввод/корректировка данных и т.п.).
Пособие не предназначено для
ния C/C++, так как автор предпологает, что читатель уже в некоторой мере овладел основами языка и способен самостоятельно найти
рассматриваются вопросы разработки типового кур-
дисциплин знаний, может быть
изучения языка программирова-
5

дополнительные сведения в предлагаемой литературе, например [1 – 5].
Многие аспекты разработки WINDOWS-приложений с использованием библиотеки OWL можно найти в [5 – 7].
В первой главе рассматривается приложение, при создании которого все фрагменты функциональной части кода написаны на старом, добром языке С. Элементарные знания языка С++ потребуются
только при создании интерфейса. Впрочем, необходимые пояснения
приводятся
Во второй главе реализация алгоритмов основана на таких конструкциях языка С++, как классы, контейнеры и стандартные алгоритмы. При этом в первой и второй главах интерфейс пользователя
основан на простейших элементах управления – командных кнопках, редактируемых полях, списках и группах переключателей.
Вопросы организации более сложного
тельные элементы управления, меню, диалоги, подсказки и т.п.,)
рассматриваются в третьей и четвертой главах.
по ходу разработки программы.
интерфейса (дополни-
6

ГЛАВА I. СОЗДАНИЕ ПРОСТОГО ПРИЛОЖЕНИЯ
ОСТАНОВКА ЗАДАЧИ. ПРЕДСТАВЛЕНИЕ ДАННЫХ
П
Рассмотрим задачу создания базы данных на сотрудников некоей организации. Предполагается хранение и анализ следующей информации: имя сотрудника (name), должность (job) и оклад (pay).
Данные удобно представлять в табличном виде (что соответствует
реляционной модели данных):
номер записи имя должность оклад
0. Геракл сантехник 1700
1. Цербер сторож 10000
2. Сидоров дворник 7200
В одной строке (записи) нашей базы данных хранится информация разных типов – символьная для полей должность и оклад, числовая – в поле оклад. В программе данные по одному сотруднику
соответствуют структуре (или классу):
struct staff{ // состав сотрудников, штат
char name[20]; // имя
char job[20]; // должность
int pay; // оклад
};
Для отображения всей структуры организации (таблицы) можно
объявить массив:
struct staff crew[100];
– где индекс элемента массива соответствует номеру записи, напри-
мер, в элементе crew[1] хранится информация об охраннике, причем
в поле crew[1].name содержится его имя, в поле crew[1].job –
должность, а в поле crew[1].pay – его оклад. Большую гибкость программы обеспечивают контейнерные классы, используемые в качестве альтернативы массивам. Такой подход рассматривается в
по-
следующих главах.
Основным элементом интерфейса в базах данных является экранная форма, предназначенная для ввода и редактирования информации. Достаточно просто при разработке программы реализовать
подобный интерфейс на основе диалогового окна. Автоматизировать
7

процесс построения приложения позволяет входящая в состав интегрированной среды Borland C++ 5 утилита AppExpert. Опираясь на
AppExpert и встроенный редактор ресурсов, не сложно создать достаточно эффективное приложение, написав всего несколько десятков строк собственного кода не вдаваясь в детали (а зачастую и не
понимая) классов OWL.
Р
АЗРАБОТКА ПРОЕКТА WINDOWS-ПРИЛОЖЕНИЯ
Рассмотрим поэтапно процесс разработки простого приложения
с помощью AppExpert. Позднее, для тех, кто все-таки захочет понять, что, как и зачем делается, некоторые этапы будут объяснены
более подробно. Неплохо было бы почитать литературу, в частности
[6,7].
Создайте проект приложения, основанный на использовании
диалогового окна: File → New → AppExpert... , и сохраните проект
под
именем WORK (для работы с проектом стоит предварительно
создать отдельную папку). AppExpert позволяет автоматизировать
процесс разработки различных типов WINDOWS-приложений:
- MDI многодокументное приложение (например – редактор
WORD);
- SDI – одно-документное (блокнот, Paint, игры, такие как пась-
янс, сапер);
- Dialog Client – приложение, основанное на диалоге. Это то, что
нам как раз и нужно.
Дополнительная опция Document/View позволяет
использовать
технику программирования, в которой управление данными и их
представление (отображение), рассматриваются раздельно. Эти вопросы выходят за рамки нашего учебного курса.
8

Выберите тип приложения – Dialog Client и снимите флажок
Document/View. Раскройте список опций (щелкнув по +) Application
и выберите пункт Basic Options. Снимите ВСЕ флажки. Окно нашего первого приложения не будет иметь панель инструментов, строку
состояния, не поддерживает почту, печать и т.д.
Раскройте список опций (щелкнув по значку +) Main Window и
выберите пункт Basic Options. Снимите флажки Max box и Thick
frame, чтобы не допустить изменения размеров окна пользователем.
Опция Max box позволит развернуть окно приложения во весь экран,
а опция Thick frame позволяет менять размеры окна мышкой. В результате подобных действий пользователя элементы управления могут не поместиться в окно приложения
или оказаться в одном углу
окна.
Нажмите кнопку Generate. Подтвердите создание проекта – Yes.
В случае удачи проект будет сгенерирован, и Вы увидите окно проекта (файл applsdi.ico появится в окне проекта только после запуска
проекта на исполнение):
9

Обязательно сохраните проект – меню File → Save (возможен
сбой). Запустите проект на выполнение – кнопка Run (или меню
Debug → Run):
Созданное приложение реагирует на кнопки OK, CANCEL и
– нажатие любой из них приведет к закрытию приложения, а также
на кнопки сворачивания окна и восстановления его размеров
Кроме того, работает системное меню:
Хорошо известно, что главным признаком опытного пользователя является умение корректно загрузить приложение и закрыть
его. Поэтому необходимо запомнить следующие правила:
Проект открывается через пункт меню Project → Open pro-
ject... Затем необходимо выбрать файл проекта (он имеет расширение ide). Чтобы закрыть проект, выберите пункт меню Project → close project... «Закрытие» проекта нажатием кнопки в
окне проекта скроет только окно проекта (проводник), в этом
случае придется выбирать View → Project, чтобы восстановить
окно проекта.
.
10
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
