
- •Введение.
- •Консольные приложения.
- •Var I : integer;
- •Знакомство со средой программирования Delphi.
- •Создание теста с помощью функции MessageBox.
- •Var I:integer;
- •Var otv: array[1..12] of integer; m: array[1..12]of string; t,ball, I: integer;
- •Кнопка с рисунком. Создание формы для изменения иконки и стиля формы
- •Создание программы – простейший калькулятор.
- •Создание приложения для нахождения корней квадратного уравнения.
- •Создание инженерного калькулятора
- •If (Sender is tButton)
- •Изучение компонента Image и его свойств.
- •Создание приложений для решения математических задач.
- •Создание простейшего текстового редактора «Блокнот»
- •Создание приложения графический редактор.
- •If ssLeft in Shift then begin
- •И зучение графических возможностей Delphi при решении математических задач.
- •Работа со списками классов tListBox и tComboBox.
- •Механизм Drag-And-Drop – копирование и перенос объектов.
- •If Copy.Checked
- •If Cut.Checked
- •Изучение методов и свойств компонента ListBox с помощью Delphi Library Reference Help.
- •Изучение свойств и методов компонента класса tTabbedNotebook.
- •Создание приложения сезоны года с использованием оператора Case.
- •Создание приложения графический редактор – рисование от руки.
- •Initialization
- •Image1.Canvas.MoveTo (X, y);
- •Var NachPoint_Move, KonPoint_Move : tPoint;
- •If Clipboard.HasFormat(cf_bitmap) then
- •Image1.Canvas.Draw(0, 0, Bitmap);
- •Работа с базами данных в Delphi. Перемещение по записям при помощи кнопок.
- •Создание собственной структуры базы данных
- •Создание меню.
- •Создание заставки для проекта работы с окном формы.
- •Var Region: hrgn; //переменная описатель будущего региона, имеет тип hrgn
- •If IsMouseDown
- •Var Fr : tForm2;
- •Создание приложения для работы с базой данных ms Access.
- •Создание псевдонима базы данных FilesDb
- •Создание формы Form2 для просмотра данных запроса, созданного в программе ms Access.
- •Создание sql запросов.
- •Создание параметрических запросов:
- •Проектирование интерфейса приложения для работы с базой данных
- •Работа с типизированными файлами.
- •If OpenDialog1.Execute and fileExsist(OpenDialog1.Filename) then
- •If OpenDialog1.Execute then
- •Создание приложение Органайзер
- •Добавьте проект следующими возможностями:
- •Работа с компонентом StringGrid для создания электронных таблиц
- •If opendialog1.Execute then
- •Программирование графических тестов.
- •Создание программы – тест.
- •И спользование генератора случайных чисел при решении задач.
- •Создание проекта игры dxball.
- •If StartSharLog
- •If IntersectRect(r1, Doska.BoundsRect, Shar.BoundsRect)
- •Var r2 : tRect; r3 : tRect; I : integer;
- •If IntersectRect(r1, r2, r3)
- •Создание простых проектов.
- •Создание приложения Многооконный редактор
- •Создание интерфейса программы:
- •Var lDoc:tList; //объявление переменной типа tList – список, в котором буду храниться указатели на создаваемые пользователем формы документов
- •X, y: Integer);
- •If OpenDialog1.Execute then
- •If FontDialog1.Execute
- •If Left.Checked then
- •Закрепление полученных знаний по темам: графика, диалоги, меню, компоненты Delphi и их свойства
- •If SaveDialog1.Execute then image1.Picture.SaveToFile(savedialog1.FileName);
- •If OpenDialog1.Execute then image1.Picture.LoadfromFile(opendialog1.FileName);
- •Image1.Canvas.LineTo(X,y);
- •Image1.Canvas.MoveTo(X,y);
- •Создание приложение для шифрования данных методами Цезаря и Аффинной системой
- •1. Создание собственного класса.
- •Var I : integer;
- •Ish_text.Free;
- •Var I : byte;
- •Создание интерфейса программы:
- •Var sdvig,I, j, Index : integer;
- •Var I, j, Index, sdvig, a, b : integer;
- •Проверка знаний по теме: Создание программ в среде программирования Delphi
- •1 Задание.
- •Вопросы для самоконтроля.
- •Перечень основной и дополнительной литературы
Работа с типизированными файлами.
Цель занятия: Обобщить умения и знания для работы с типизированными файлами.
Типизированный файл – это такой файл, для которого возможно определить формат или структуру файла и тип данных сохраняемой в нем информации, такой, как целые или действительные числа, текстовые строки с их длиной.
Длина любого компонента типизированного файла строго постоянна, что дает возможность организовать доступ к каждому из них, т.е. доступ к компоненту по его порядковому номеру.
Описание типизированного файла:
type
rec = record
s:string[20];
n:integer;
end;
var
f:file of rec;
v:rec;
Основные функции:
функция |
описание |
Read(f, v) |
Читает данные v из типизированного файла f. |
Write(f, v) |
Записывает данные v в типизированный файл f. |
Seek(f, n) |
Смещает указатель файла f к требуемому компоненту: n – номер компонента файла. Первый компонент имеет номер 0. |
Filesize(f) |
Возвращает количество компонентов файла. Для перемещения указателя в конец файла необходимо записать: Seek(f, filesize(f)) |
ЗАДАЧА 1. Создать файл, в который была бы записана информация о студентах: фамилия, специальность и средний балл по предмету.
Для решения задачи необходимо:
-поместим на форму три поля ввода Edit1, три кнопки Button1, компонент OpenDialog1;
-в общей области опишем переменные:
type
rec = record
s:string[10];
s1:string[15];
n:integer;
end;
var
f:file of rec;
v:rec;
d,fname:string;
-напишем программы:
для создания файла:
procedure TForm1.Button1Click(Sender: TObject);
begin
OpenDialog1.title:='создание файла';
OpenDialog1.Filter := 'текстовые файлы|*.TXT';
If OpenDialog1.Execute and fileExsist(OpenDialog1.Filename) then
begin
AssignFile(f, OpenDialog1.FileName);
rewrite(f);
CloseFile(f);
if OpenDialog1.FileName<>'' then
begin
fname:=OpenDialog1.FileName;
end; end; end;
для открытия файла:
procedure TForm1.Button2Click(Sender: TObject);
begin
memo1.Enabled:=true;
OpenDialog1.title:='открытие файла';
OpenDialog1.Filter := 'текстовые файлы|*.TXT';
If OpenDialog1.Execute then
begin
if OpenDialog1.FileName<>'' then
begin
AssignFile(F, OpenDialog1.FileName); reset(F);
while (not eof(f)) do
begin
read(f,v); memo1.lines.Add(v.s+v.s1+inttostr(v.n));
end; CloseFile(f);
fname:=OpenDialog1.FileName;
end; end; end;
для добавления данных в файл:
procedure TForm1.Button3Click(Sender: TObject);
begin
AssignFile(F, fname); reset(f);
v.s:=edit1.Text;
v.s1:=edit2.Text;
v.n:=strtoint(edit3.text);
seek(f,filesize(f));
Write(f,v);
edit1.text:='';
edit2.Text:='';
edit3.Text:='';
CloseFile(F); end;
Задания:
Разработать форму, на которую поместить следующие компоненты: компонент MainMenu, компонент OpenDialog, поле ввода Edit1 (в зависимости от задания) и компонент memo1. Разработать следующее меню: меню Файл, содержащее команды создать, открыть, добавить, меню Поиск, содержащее команду, при выборе которой происходит поиск по выбранному критерию, меню Выход, содержащее команду выход. Организовать работу следующим образом: при выборе в меню команды создать происходит создание типизированного файла, при выборе команды добавить происходит добавление данных из полей ввода в типизированный файл, который был создан. При выборе команды открыть данные из файла отображаются в memo.
Варианты заданий:
Адресное бюро. Поля ввода: фамилия, адрес, телефон. Поиск осуществлять по фамилии.
Аэропорт. Поля ввода: фамилия пилота, рейс, маршрут. Поиск осуществлять по маршруту.
Туристическое агентство. Поля ввода: маршрут, количество дней, день отправки. Поиск осуществлять по дню оправки.
Библиотека. Поля ввода: автор, название произведения, год издания. Поиск осуществлять по автору.
Регистрационный пункт ГИБДД. Поля ввода: номер машины, фамилия, номер водительского удостоверения. Поиск осуществлять по номеру машины.
Продовольственный магазин. Поля ввода: название товара, срок реализации, поставщик. Поиск осуществлять по названию товара.
Брокерская фирма. Поля ввода: акции, количество, курс акции. Поиск осуществлять по курсу акции.
Ботанический сад. Поля ввода: название растения, возраст, восприимчивость к холоду. Поиск осуществлять по названию растения.
Морская компания. Поля ввода: название судна, фамилия капитана, тип судна. Поиск осуществлять по фамилии капитана.
Образовательные учреждения. Поля ввода: название учреждения, стоимость за семестр, адрес. Поиск осуществлять по названию учреждения.
Рекламное агентство. Поля ввода: услуги, тариф, фамилия клиента. Поиск осуществлять по тарифу.
Детские оздоровительные лагеря. Поля ввода: название лагеря, день заезда, стоимость путевки. Поиск осуществлять по стоимости путевки.
ВОПРОСЫ:
Что такое типизированный файл.
Как добавить в файл данные.
Открытие файла для чтения данных.