- •Введение.
- •Консольные приложения.
- •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 Задание.
- •Вопросы для самоконтроля.
- •Перечень основной и дополнительной литературы
If ssLeft in Shift then begin
with PaintBox1.Canvas do
begin
FloodFill(X, Y, pen.Color,fsBorder);
end; end; end;
Примечание: Для выбора в меню команд изменения цвета границы и цвета заливки свяжите с соответствующими событиями нажатия соответствующих кнопок.
В пункт меню Параметры добавить команду Шрифт. Для выбора шрифта требуется добавить на форму компонент FontDialog1.
Для ввода текста в область компонента GroupBox2 добавьте два компонента класса TLabel, Edit1. Измените свойства добавленных компонентов:
свойство Caption компонента Label1 на Ввод текста;
свойство Text компонента Edit1 на пустое значение;
procedure TForm1.PaintBox1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if ssRight in Shift then begin PaintBox1.Canvas.Brush.Style:=bsClear; TextX := X; TextY := Y; PaintBox1.Canvas.TextOut(X, Y, '*'); Edit2.SetFocus; Edit2.SelectAll; end; end; |
procedure TForm1.Edit2Change(Sender: TObject); begin with PaintBox1.Canvas do begin TextOut(TextX, TextY, Edit2.Text) end; end; |
ВОПРОСЫ:
Процедуры для рисования простейших геометрических фигур: прямоугольника, эллипса, линии.
Процедура заливки замкнутой области.
И зучение графических возможностей Delphi при решении математических задач.
Цель: Научиться программировать приложения для решения математических задач
Задание: Создать проект вычисления площади и периметра трапеции. Построить чертеж трапеции по заданным длинам сторон.
Метод решения:
Формулы для расчета высоты трапеции:
Y=(C2-D2-(b-a)2)/(2*(a-b)), h= SQRT(d2-y2)
ВОПРОСЫ:
Использование математических формул при решении задачи
Как добавить меню для написанного приложения.
Работа со списками классов tListBox и tComboBox.
ЗАДАЧА1. Поместить на форму компонент TabbedNotebook1. Организовать работу следующим образом: при активизации формы появляются две закладки: СТУДЕНТЫ АСУ2-1 и СТУДЕНТЫ АСУ2-2.
Для решения задачи необходимо:
-поместить компонент TabbedNotebook1 со страницы Win3.1;
-выбрать в окне ИНСПЕКТОРА ОБЪЕКТА свойство Align и установить его равным alClient;
-выбрать в окне ИНСПЕКТОРА ОБЪЕКТА свойство Pages;
-в появившемся диалоговом окне выбрать кнопку Edit…;
-в поле Page name написать название первой страницы – СТУДЕНТЫ АСУ2-1;
-выбрать кнопку Close;
-выбрать кнопку Add…;
-в поле Page name написать название первой страницы – СТУДЕНТЫ АСУ2-2;
-поместить на первую страницу СТУДЕНТЫ АСУ2-1 кнопку Button1:
для этого необходимо: -щелкнуть правой кнопкой мыши по слову СТУДЕНТЫ АСУ2-1; -в появившемся меню выбрать команду Next Page;
ЗАДАЧА2. Поместить на форму следующие компоненты: ListBox1, ComboBox1. Организовать работу следующими образом: при активизации формы происходит заполнение списка ListBox1 и раскрывающего списка ComboBox1 некоторыми значениями.
Для решения задачи необходимо:
-поместить на форму компоненты ListBox1, ComboBox1;
-указать в свойстве text компонента ComboBox1 слово first line;
-выбрать в окне ИНСПЕКТОРА ОБЪЕКТА закладку Events;
-написать программу, согласно которой будет происходить заполнение списков:
для этого необходимо: -выполнить двойной щелчок по событию onActivate;
-в появившейся конструкции написать программу:
procedure TForm1.FormActivate(Sender: TObject);
begin
listbox1.Items.Add('первая строка');
listbox1.Items.Add('вторая строка');
listbox1.Items.Add('третья строка');
listbox1.Items.Add('четвертая строка');
listbox1.Items.Add('пятая строка');
listbox1.Items.Add('шестая строка');
listbox1.Items.Add('седьмая строка');
combobox1.Items.Add('second line');
combobox1.Items.Add('third line');
combobox1.Items.Add('fourth line');
combobox1.Items.Add('fifth line');
combobox1.Items.Add('sixth line');
combobox1.Items.Add('seventh line'); end;
ЗАДАЧА3. Поместить на форму следующие компоненты: ListBox1, Button1, Button2, Edit1. Организовать работу следующим образом: при активизации формы происходит заполнение списка значениями. При выборе кнопки Button1 происходит переход к первой записи, а при выборе кнопки Button2 – к следующей записи.
Для решения задачи необходимо:
-поместить компоненты на форму;
-написать программу, отвечающую за заполнение списка:
по событию onActivate формы:
procedure TForm1.FormActivate(Sender: TObject);
begin
listbox1.Items.Add('первая строка');
listbox1.Items.Add('вторая строка');
listbox1.Items.Add('третья строка');
listbox1.Items.Add('четвертая строка');
listbox1.Items.Add('пятая строка'); end;
-написать программу, отвечающую за переход к первой записи и отображения индекса записи в поле Edit1:
по событию onClick кнопки Button1:
procedure TForm1.Button1Click(Sender: TObject);
begin
listbox1.ItemIndex:=0;
edit1.Text:=inttostr(listbox1.itemindex+1); end;
-написать программу, отвечающую за переход к следующей записи в списке ListBox1:
по событию onClick кнопки Button2:
procedure TForm1.Button2Click(Sender: TObject);
begin
listbox1.ItemIndex:=listbox1.ItemIndex+1;
edit1.Text:=inttostr(listbox1.itemindex+1); end;
ЗАДАЧА4. Поместить на форму следующие компоненты: ComboBox1, Edit1. Организовать работу следующим образом: при активизации формы происходит заполнение раскрывающегося списка ComboBox1 некоторыми значениями. При выборе в списке определенной записи оно отображается в поле вода Edit1.
Для решения задачи необходимо: поместить компоненты на форму;
-указать в свойстве text компонента ComboBox1 слово first line;
-написать программу, отвечающую за заполнение списка ComboBox1 определенными значениями: по событию onActivate формы:
procedure TForm1.FormActivate(Sender: TObject);
begin
combobox1.Items.Add('second line');
combobox1.Items.Add('third line');
combobox1.Items.Add('fourth line');
combobox1.Items.Add('fifth line');
combobox1.Items.Add('sixth line');
combobox1.Items.Add('seventh line'); end;
-написать программу, отвечающую за отображение в поле Edit1 определенной записи списка ComboBox1:
по событию onClick компонента ComboBox1:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
edit1.Text:=combobox1.Text;
end;
ЗАДАЧА5. Поместить на форму следующие компоненты: ListBox1, Button1, Edit1. Организовать работу следующим образом: при выборе кнопки Button1 происходит добавление данных в список ListBox1, записанных в поле ввода Edit1.
Для решения задачи необходимо:
-поместить компоненты на форму;
-написать программу, отвечающую за добавление новой записи в список:
по событию onСlick кнопки button1:
procedure TForm1.Button1Click(Sender: TObject);
begin
listbox1.Items.Insert(listbox1.itemindex+1,edit1.text);
end;
ЗАДАЧА6. Поместить на форму следующие компоненты: ListBox1, Button1,. Организовать работу следующим образом: при выборе кнопки Button1 происходит удаление записи из списка с индексом, указанным в поле SpinEdit1.
Для решения задачи необходимо:
-поместить компоненты ListBox1, Button1 со страницы Standart и компонент SpinEdit1 со страницы Samples;
-установить свойство MaxValue компонента SpinEdit1 равным 100;
-написать программу, отвечающую за удаление записи в списке:
по событию onClick кнопки Button1:
procedure TForm1.Button1Click(Sender: TObject);
begin
listbox1.Items.Delete(spinedit1.value-1);
end;
ЗАДАЧА7. Поместить на форму следующие компоненты: ListBox1, Image1. Организовать работу следующим образом: при активизации формы список ListBox заполняется некоторыми значениями. При выборе в списке определенной записи на форме отображается её графическое изображение.
Для решения задачи необходимо:
-создать в Paint три рисунка:
квадрат, сохранив его под именем 1.bmp на диске с:\,
круг, сохранив его под именем 2.bmp на диске с:\,
треугольник, сохранив его под именем 3.bmp на диске с:\.
-поместить на форму компонент ListBox1 со страницы Standart и компонент Image со страницы Additional;
-написать программу, отвевающую за заполнение списка:
по событию onActivate формы:
procedure TForm1.FormActivate(Sender: TObject);
begin
listbox1.Items.Add('квадрат');
listbox1.Items.Add('круг');
listbox1.Items.Add('треугольник');
end;
-написать программу, отвечающую за отображение графического изображения на форме:
по событию onClick компонента ListBox1:
procedure TForm1.ListBox1Click(Sender: TObject);
var
m: array[1..3] of string;
begin
m[1]:='c:\1.bmp';
m[2]:='c:\2.bmp';
m[3]:='c:\3.bmp';
i:=listbox1.itemindex;
image1.Picture.LoadfromFile(m[i+1]);
end;
ВОПРОСЫ:
Изучение свойств и методов компонентов классов TListBox и TComboBox
Использование массивов при написании программ.