Разработка Windows-приложений в среде Borland Delphi
Знакомство с интегрированной средой Delphi. Базовые компоненты Delphi. Элементы пользовательского интерфейса. Использование массива объектов в приложении. Алгоритмы сортировки списка. Использование звука в приложениях. Графические возможности Delphi.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | учебное пособие |
Язык | русский |
Дата добавления | 04.05.2018 |
Размер файла | 1,6 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
14. В модуль DataModuleUnit добавитькомпонент DataSource (назвать TownSource) и ADOTable (назвать TownTable), у компонента TownSource в свойстве DataSet указать TownTable.
15. Настроить отображение справочника городов:
· В свойстве Connection указать компонент ADOConnection1
· В свойстве TableName указать таблицу Справочник городов
· Для свойства Active значение True
· Дважды щелкнуть по TownTable, добавить все поля, поле Key1 сделать невидимым.
16. Создать новую форму (name - TownBookForm )для редактирования справочника, сохранить ее в модуле под именем TownBookUntil
17. Подключить к новой форме модуль DataModuleUnit, выполнив File / Use Unit, выбрать DataModuleUnit, Ок
18. Добавить на форму сетку DBGrid, в свойстве DataSource указать таблицу Справочник городов - DataModule1.TownSource.
19. Доработать интерфейс формы Справочник городов:
· Добавить меню
Редактирование Назад
сохранить
добавить
удалить
· Для пункта Добавить ввести код
DataModule1.TownTable.Insert;
dbGrid1.SetFocus;
· Для пункта Сохранить ввести код
If DataModule1.TownTable.Modified Then
DataModule1.TownTable.Post;
· Для пункта Удалить ввести код
DataModule1.TownTable.Delete
20. Перейти на главную форму, создать меню:
Файл Редактирование Справочники Выход
Справочник городов
21. Для пункта Справочник городов ввести код:
TownBookForm.ShowModal;
22. Загрузить программу, вызвать Справочник городов и добавить несколько строк. Закрыть программу.
23. Для компонента DBGrid1 на главной форме для свойства Options / dgEditing установить значение False (редактирование данных запрещено).
24. В пункт меню Редактирование добавить подпункты: Добавить запись, Редактировать запись, Удалить запись
25. Создать панель с кнопками для быстрого доступа к пунктам меню
26. Создать новую форму для редактирования каждой записи, изменить свойства:
Name - EditFormUnit,
BorderStyle - bsSingle,
Position - poMainFormCenter
форму сохранить по именем EditFormUnit.
27. Подключить к новой форме модуль с данными
28. Привести форму в соответствие с образцом:
· Поля для ввода брать на вкладке Data Control.
· Чтобы компонент видел данные из нужного поля, указать у него в свойстве DataSource нужную таблицу (DataModule1.DataSource1, также как это делали с сеткой редактирования), в свойстве DataField указать поле, которое надо редактировать (самостоятельно).
· Для выбора города добавить компонент DBLookupComboBox, для свойства DataSource указать основную таблицу DataModule1.DataSource1, в свойстве DataField указать поле Город, в свойстве ListSource указать DataModule1.TownSource, свойстве ListField указать Название города, в свойстве KeyField указать поле Key1.
29. Для кнопки Сохранить ввести код:
If DataModule1.BookTable.Modified Then
DataModule1.BookTable.Post;
30. Для кнопки Отмена ввести код:
DataModule1.BookTable.Cancel
31. Перейти на главную форму и для пункта меню Добавить запись ввести код:
DataModule1.BookTable.Insert;
EditRecordForm.ShowModal;
32. Для пункта меню Редактировать запись ввести код:
EditRecordForm.ShowModal;
33. Загрузить программу, создать новую запись, в поле Город выбрав какое-нибудь значение из справочника, нажмите Сохранить. Просмотрите сетку.
34. Результат показать преподавателю
35. Для пункта меню Удалить запись ввести код:
If Application.MessageBox(PChar(`Вы действительно хотите удалить'+DataModule1.BookTableDSDesigner.AsString), `Внимание!!!', MB_OkCancel)=id_Ok then DataModule1.BookTable.Delete;
Примечание
DataModule1 имя модуля
BookTableDSDesigner имя поля с фамилией (дважды щелкнуть по BookTable и смотреть свойство поля Фамилия, если имя отличается, скорректировать код)
AsString метод, возвращающий значение в виде строки
36. В сетке на главной форме город отображается в виде индекса строки в справочнике городов, исправим недостаток, для этого:
· Перейти в модуль DataModule1, выделить компонент
· Сделать его неактивным (Active False)и дважды по нему щелкнуть
· Создать новое поле: щелкнуть в окне, выбрать New Field
· В окне заполнить поля следующим образом:
Name - Town, Type - String,
FieldType - Lookup (поисковое поле),
KeyField - Город,
DataSet - TownTable (таблица, где нужно искать)
Lookup Keys - Key1 (по этому полю надо искать),
Result Field - Название города, нажать Ок
· Появилось новое поле, перетащить его ближе к полю Город
· Сделать таблицу BookTable вновь активной загрузить программу, просмотреть результат.
37. Сделать поле Город невидимым, чтобы не видеть числа, а над полем Town написать надпись Город (самостоятельно)
Сортировка и фильтрация данных
Поиск данных и сортировка выполняются по индексным полям. В телефонном справочнике чаще ищут информацию по номеру телефона или фамилии. В таблице Справочник для полей Фамилия и Телефон свойство Индексированное поле имеет значение Да(допускаются совпадения).
38. Добавить в меню пункт Сортировка и подпункты По телефону, по Фамилии
39. для подпунктов ввести соответствующий код:
DataModule1.BookTable.IndexFieldNames:='Фамилия';
DataModule1.BookTable.IndexFieldNames:='Телефон';
40. Реализовать функцию поиска данных, для этого:
· добавить на форму панель, на нее метку Найти и TEdit с именем FindEdit
· ввести следующий код:
procedure TForm1.FindEditChange(Sender:TObject);
begin
if Length(FindEdit.Text)>0 then
DataModule1.BookTable.Filtered:=true
Else DataModule1.BookTable.Filtered:=false;
DataModule1.BookTable.Filter:='Фамилия>'''+FindEdit.Text+'''';
end;
41. Проверить работу программы.
Фильтры в ADO работают плохо, но в Delphi можно расширить возможности фильтрации.
42. Перейти в модуль DataModule1, для компонента BookTable выбрать событие OnFilterRecord и ввести код:
Accept:=false;
if copy(BookTableDSDesigner.AsString,1,Length(Form1.FindEdit.Text))=Form1.FINDedit.Text then
Accept:=true; {строка соответствует фильтру, ее можно отображать}
end;
43. Проверить работу программы.
ИНДИВИДУАЛЬНЫЕ ПРОЕКТЫ
Общие рекомендации по разработке
Разработка индивидуального проекта может быть одним из вариантов завершения изучения темы «Программирование в среде Delphi».
Цель- овладение умением обобщить и систематизировать теоретический курс по «Основам алгоритмизации и программирования» и умение применить его практически.
Работа над проектом ведется студентом самостоятельно и состоит из нескольких этапов:
Первый этап - подготовительный - имеет цели:
· самостоятельный выбор темы проекта, ознакомление с общими требованиями по разработке;
· утверждение варианта темы преподавателем в ходе собеседования;
· сбор исходных данных в соответствии с темой проекта, работа с литературой;
Второй этап - проектирование приложения.
Проектирование приложения включает в себя:
· разработку алгоритма;
· проектирование интерфейса приложения;
· программную реализацию;
· тестирование и отладку.
Третий этап - итоговый - предполагающий оформление отчета и защиту проекта.
Отчет должен включать:
· титульный лист и содержание;
· постановку задачи;
· описание интерфейса приложения;
· инструкцию пользователю;
· листинг программного кода с комментариями.
· заключение (дать характеристику разработанному приложению, указать возможную сферу применения).
· список использованной литературы;
На защиту индивидуального проекта представляется отчет, подготовленный с помощью текстового редактора и напечатанного на принтере, и электронная версия приложения.
Примерные темы индивидуальных проектов
Приложение «Морской бой»
Постановка задачи: Разработать приложение, реализующее алгоритм игры «Морской бой». Играют два игрока - пользователя. Каждый игрок выполняет расстановку своих кораблей: два трехпалубных, три двухпалубных, четыре однопалубных корабля. После проверки правильности расстановки кораблей, изображение кораблей «прячется» от противника. Разыгрывается право первого хода. Активный игрок выполняет ход, указывая координаты корабля противника. Переход ход происходит в случае «стрельба мимо». Выигрывает тот, кто первый «подобьет» корабли противника.
Приложение «Как стать миллионером»
Постановка задачи: Разработать приложение, реализующее алгоритм игры «Кто хочет стать миллионером?». Подготовить внешний файл, содержащий 14 вопросов и 4 варианта ответов на каждый из них. Приложение должно выводить очередной вопрос и варианты ответов. Переход к следующему вопросу происходит только в случае верного ответа. Реализовать возможность трех подсказок: 50 на 50, «помощь зала», звонок другу. Игрок имеет право на три несгораемых суммы.
Приложение «Арканоид»
Постановка задачи: Разработать приложение, реализующее алгоритм игры «Арканоид». На игровом поле расположена «кирпичная стенка». Игрок, управляя «лаптой», должен отбивать постоянно движущийся шарик и выбивать «кирпичи» в стенке. Если шарик не отбит лаптой, игрок теряет свои очки. Игрок выигрывает, если все «кирпичи» стали невидимы.
Приложение «Клавиатурный тренажер»
Постановка задачи: Разработать приложение, позволяющее тренировать навыки работы с клавиатурой. Предусмотреть несколько уровней сложности тренажера. Приложение должно сохранять лучшие результаты игроков.
Приложение «Крестики - нолики»
Постановка задачи: Разработать приложение, реализующее алгоритм игры «Крестики-нолики». В игре участвуют два игрока: пользователь и компьютер. В начале игры разыгрывается право первого хода. Выигрывает тот, кто первый построит линию из своих знаков.
Приложение «Будильник»
Постановка задачи: Разработать приложение, позволяющее имитировать работу будильника с двумя стрелками: часовой и минутной. Будильник должен показывать текущее время. Предусмотреть возможность настройки циферблата будильника (цвет, шрифт) и звуковой сигнал на определенное пользователем время.
Приложение «Шифрование текста»
Постановка задачи: Разработка приложения, реализующего алгоритмы различных способов шифрования и дешифрования текстовой информации.
Приложение «Построение графика функции»
Постановка задачи: Разработать приложение, позволяющее исследовать графики различных математических функций. Предусмотреть возможность масштабирования графика и выбор тип линий.
Приложение «Обучающая программа по английскому языку»
Постановка задачи: Разработать приложение, позволяющее пользователю воспроизводить произношение некоторых английских слов и их перевод.
Приложение «Файловый менеджер»
Постановка задачи: Разработать приложение, позволяющее пользователю работать с файловой системой используемого компьютера:
· просмотр содержимого внешних носителей информации;
· просмотр дерева каталогов диска;
· просмотр содержимого выбранного каталога;
· удаление и переименование файла;
· определение объема свободной памяти диска.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1. Шупрута В.В. Delphi 2006 на примерах + CD
2. Фаранов В.В. Delphi Программирование на явке высокого уровня: Учебник для вузов
3. Климова Л.М., Delphi Основы программирования. Решение типовых задач, Самоучитель, М.:КУДИЦ-ОБРАЗ,2008.
4. Зубов А., Программирование на Delphi. Трюки и эффекты, СПб.: Питер,2005.
5. Ремнев А.А., Федотов С.В., Курс Delphi для начинающих. Полигон нестандартных задач., М.: СОЛОН-ПРЕСС,2006.
ПРИЛОЖЕНИЕ 1
Образец оформления титульного листа отчета
Государственное профессиональное образовательное
автономное учреждение Амурской области
«Благовещенский политехнический колледж»
Специальность 230701 «Прикладная информатика (в экономике)»
ПМ2 Разработка, внедрение и адаптация программного обеспечения отраслевой направленности
ОТЧЕТ
по практической работе № 1
Тема работы
«_______________________________________________»
Самостоятельное задание № 2
Выполнил студент гр 305 Петров И.В
Проверил преподаватель Губина Н.А.
Оценка _______________
Дата _______________
ПРИЛОЖЕНИЕ 2
Процедуры и функции Delphi
(краткое изложение)
Математические
Назначение |
Примериспользования |
||
ABS |
Возвращает абсолютное значение |
Y:=ABS(X); |
|
ROUND |
Округление к ближайшему целому |
Y:=ROUND(X) |
|
TRUNC |
Округление в меньшую сторону |
Y:=TRUNC(X) |
|
INT |
Возвращает целую часть вещественного числа |
Y:=INT(X) |
|
FRAC |
Возвращает дробную часть числа |
Y:=FRAC(X) |
|
SQR |
Возвращает квадрат указанного значения |
Y:=SQR(X) |
|
SQRT |
Возвращает квадратный корень |
Y:=SQRT(X) |
|
RANDOM |
Возвращает случайное число из области, ограниченной заданным значением |
Y:=RANDOM(100) |
|
RANDOMIZE |
Позволяет задать случайное начальное значение для функции RANDOM |
RANDOMIZE |
|
TAN |
Возвращает тангенс указанного числа |
Y:=TAN(X) |
Для работы с датами и временем
Назначение |
Пример использования |
||
CurrentYear |
Возвращает текущий год |
Label2.Caption := IntToStr(CurrentYear) |
|
Date |
Возвращает текущую дату |
Label2.Caption:= DateToStr(Date) |
|
DayOfWeek |
Возвращает число от 1 до 7,которое определяет день недели |
If DayOfWeek(Date)=1 then Label2.Caption :='воскресенье'; |
|
DecodeDate |
Преобразует дату в раздельные составляющие: год, месяц, день |
DecodeDate(Date,Year,Moth,Day); |
|
Time |
Возвращает текущее время в формате TDateTime |
Label2.Caption :=TimeToStr(Time); |
|
DecodeTime |
Преобразует время в раздельные составляющие: час, минуту, секунду, миллисекунду |
DecodeTime(Time,H,M,Sec,MSec); |
|
IncMonth |
Возвращает дату, отстоящую от заданной даты на указанное число месяцев |
s:=IncMonth(Date,4); |
Диалоговые
Назначение |
Пример использования |
||
ShowMessage |
Позволяет отобразить информационное окно с предустановленной кнопкой Ok |
||
ShowMessage(`Error ') |
|||
InputBox |
Позволяет создавать окно диалога для ввода пользовательской информации |
||
S:=InputBox('Вход в систему','Ваш пароль','777'); |
|||
MessageDlg |
Позволяет отобразить информационное окно с набором кнопок |
||
If MessageDlg('Вы уверены? ',mtConfirmation,[mbYes,mbNo],0) = mrYes Then Exit; |
Преобразование типов
Назначение |
Пример использования |
||
VAL |
Преобразование строки в целое или вещественное число |
VAL(STROKA,Y,CODE) |
|
STR |
Преобразование целого или вещественного числа в строку |
STR(Y,STROKA) |
|
DateToStr |
Преобразование даты в строку |
Label2.Caption:= DateToStrDate(Date) |
|
StrToDate |
Преобразование строки в дату |
S:=StrToDate(Edit1.text); |
|
TimeToStr |
Преобразование строки во время |
Label2.Caption :=TimeToStr(Time); |
Для работы с символами и строками
Назначение |
Пример использования |
||
CHR |
Возвращает символ по указанному коду ASCII |
S:=CHR(X) |
|
INSERT |
Позволяет вставить одну строку в другую, начиная с заданного символа |
Insert(context,stroka,3) |
|
COPY |
Возвращает заданную часть строки |
S:=COPY(stroka,1,5) |
|
LENGTH |
Возвращает число символов строки |
K:= LENGTH(stroka) |
|
POS |
Возвращает позицию вхождения указанной последовательности символов в заданную строку |
K:=POS(context,stroke) |
|
UpperCase |
Возвращает строку, все строчные латинские буквы в которой преобразованы к прописным. |
S2:= UpperCase(S1) |
|
LowerCase |
Возвращает строку, все прописные латинские буквы в которой преобразованы к строчным. |
S2:= LowerCase(S1) |
|
DELETE |
Позволяет получить строку, из которой удалена заданная часть |
DELETE(stroka,2,4) |
|
TRIM |
Возвращает строку, в которой удалены пробелы с обеих сторон |
S2:=TRIM(s1) |
ПРИЛОЖЕНИЕ 3
Именованные константы в Delphi
Именованные константы тип TColor
Константа |
Цвет |
Константа |
Цвет |
|
clBlack |
Черный |
clSilver |
Серебристый |
|
clMaroon |
Каштановый |
clRed |
Красный |
|
clGreen |
Зеленый |
clLime |
Салатный |
|
clOlive |
Оливковый |
clBlue |
Синий |
|
clNavy |
Темно-синий |
clFuchsia |
Ярко-розовый |
|
clPurple |
Розовый |
clAqua |
Бирюзовый |
|
clTeal |
Зелено-голубой |
clWhite |
Белый |
Именованные константы, определяющие стиль линии
Константа |
Вид линии |
|
psSolid |
Сплошная линия |
|
psDash |
Пунктирная линия, длинные штрихи |
|
psDot |
Пунктирная линия, короткие штрихи |
|
psDashDot |
Пунктирная линия, чередование длинного и короткого штрихов |
|
psDashDotDot |
Пунктирная линия, чередование одного длинного и двух коротких штрихов |
|
psClear |
Линия не отображается (используется, если не надо изображать границу области, например, прямоугольника) |
Именованные константы, определяющие стиль заполнения замкнутого контура
Константа |
Тип заполнения (заливки) области |
|
bsSolid |
Сплошная заливка |
|
bsClear |
Область не закрашивается |
|
bsHorizontal |
Горизонтальная штриховка |
|
bsVertical |
Вертикальная штриховка |
|
bsFDiagonal |
Диагональная штриховка с наклоном линий вперед |
|
bsBDiagonal |
Диагональная штриховка с наклоном линий назад |
|
bsCross |
Горизонтально-вертикальная штриховка, в клетку |
|
bsDiagCross |
Диагональная штриховка, в клетку |
Размещено на Allbest.ru
...Подобные документы
Разработка головоломки на основе гравюры Альбрехта Дюрера "Магический квадрат". Главные составные части среды программирования Delphi, особенности ее стандартных компонентов и процесса сохранения программы. Компоненты и алгоритмы создаваемой программы.
курсовая работа [147,1 K], добавлен 05.02.2015Ознакомление с историей создания и особенностями объектно-ориентированного языка программирования Delphi. Разработка приложения, фиксирующего количество повторений какого-либо слова в тексте, введённом в поле MEMO. Описание интерфейса программы.
курсовая работа [880,1 K], добавлен 21.04.2015Borland Delphi 7 как универсальный инструмент разработки, применяемый во многих областях программирования, функции: добавление информации об абитуриентах в базу данных, формирование отчетов. Рассмотрение и характеристика основных компонентов Delphi.
контрольная работа [3,6 M], добавлен 18.10.2012Особенности среды визуального проектирования Borland Delphi 7.0. Этапы разработки программы и составления блок-схемы алгоритмов. Способы вычисления кусочно-заданной функции одной переменной. Рассмотрение компонентов среды Delphi, ее предназначение.
контрольная работа [703,8 K], добавлен 24.09.2012Delphi как среда разработки программ, ориентированных на работу в Windows. Назначение и преимущество использования электронных учебников. Описание возможностей среды Delphi 5 для разработки электронного учебника. Варианты применения служб Internet.
дипломная работа [3,6 M], добавлен 13.07.2011Теоретические основы применения технологии ADO в среде Delphi. Основные понятия и определения теории баз данных. Компоненты Delphi для создания приложений, оперирующих с базами данных. Общий вид и основные особенности работы приложения "Аптека".
курсовая работа [1,4 M], добавлен 09.08.2012Разработка программы генератора звука в среде Borland Delphi с использованием стандартных классов TMemoryStream (для хранения звука в виде бинарных данных) и TStrings (для хранения характеристик конкретной частоты). Запись звука в файл (форматы).
курсовая работа [160,5 K], добавлен 22.11.2014Разработка программы для работы в операционных системах семейства Windows. Использование среды Delphi - современной технологии визуального проектирования. Создание пользовательского интерфейса, оконного приложения, меню; задание исходной матрицы.
курсовая работа [1,5 M], добавлен 12.01.2011Анализ исходных данных. Определение структуры модуля для работы файлом. Разработка объектно-ориентированного приложения, использующего массив объектов, в среде Delphi. Модульная структура программного комплекса. Процедура сортировки методом вставки.
курсовая работа [2,2 M], добавлен 20.09.2014Программа поиска в базе данных в среде Borland Delphi 7.0 Enterprise. Условия и блок-схемы задач. Ввод массива. Текст программ в Delphi, в Паскаль. Текст программы поиска в базе данных. Кодирование материала. Изготовление реляционной базы данных.
практическая работа [27,6 K], добавлен 11.10.2008Шифрование как метод защиты информации. История развития криптологии. Классификация алгоритмов шифрования, симметричные и асимметричные алгоритмы. Использование инструментов криптографии в Delphi-приложениях. Краткая характеристика среды Delphi 7.
курсовая работа [48,5 K], добавлен 19.12.2009Основы программирования, работа в консольном режиме Delphi. Правила оформления комментариев. Типы данных, используемые в консольном режиме. Текстовый редактор Delphi Memo. Пример загрузки текстового файла. Примеры решения и оформления простейших задач.
отчет по практике [2,1 M], добавлен 11.03.2014Интегрированная среда разработки Delphi и элементы, входящие в ее состав. Математическая модель, алгоритм решения и его свойства. Описание операторов, процедур, функций и методов. Создание приложений по аналитической геометрии и теоретической механике.
курсовая работа [1,8 M], добавлен 26.05.2010Рассмотрение теории и технологии работы со средой программирования Delphi. Описание Описание интерфейса программы, структуры данных, генерации точек. Разработка задания по выявлению всех квадратов, которые могут быть образованы точками на плоскости.
реферат [21,0 K], добавлен 13.01.2015Разработка программы автоматизации процесса проверки знаний учащихся. Использование языка программирования Borland Delphi 7.0, его свойства, компоненты для работы со строками. Создание обучающих тестов на знание лексики и грамматики английского языка.
курсовая работа [521,0 K], добавлен 06.03.2016Среда для разработки приложений Borland Delphi 2007 с помощью Microsoft Visual Basic. Создание современной системы "Паспортный стол" на языке программирования Delphi. Состав объектов, обеспечивающих функциональность всего клиентского приложения.
курсовая работа [333,7 K], добавлен 03.03.2015Проектирование программного модуля в среде программирования Borland Delphi 7.0. Схемы алгоритмов решения задач по темам "Символьные переменные и строки", "Массивы", "Работа с файлами", "Создание анимации". Реализация программного модуля, код программы.
отчет по практике [961,6 K], добавлен 21.04.2012Среда Borland Delphi и ее графические средства для построения фрактальных множеств. Разработка программы для построения изображения листа папоротника при помощи вероятностных распределений с использованием средств для отображения графической информации.
курсовая работа [1,3 M], добавлен 29.07.2013Разработка программы по оформлению заказов на билеты Оренбургского государственного областного драматического театра им. Горького. Использование объектно-ориентированного программирования и реализация проекта в среде визуального программирования Delphi 7.
курсовая работа [6,3 M], добавлен 12.11.2014Основные приемы работы в среде программирования Delphi. Особенности технологии создания простейших приложений. Работа с компонентами среды разработки приложений. Ввод, редактирование, выбор и вывод информации. Аспекты использования структуры ветвления.
методичка [619,9 K], добавлен 17.11.2011