образ 680 Мб
ссылка:
https://drive.google.com/file/d/0B7bb6rcuRclFTG1jelRRU1d5UG8/view?usp=sharing&resourcekey=0-GYiNXisFKPhhA489k0aGLw
или
https://drive.google.com/file/d/0B7bb6rcuRclFTG1jelRRU1d5UG8/view?resourcekey=0-GYiNXisFKPhhA489k0aGLw
образ 680 Мб
ссылка:
https://drive.google.com/file/d/0B7bb6rcuRclFTG1jelRRU1d5UG8/view?usp=sharing&resourcekey=0-GYiNXisFKPhhA489k0aGLw
или
https://drive.google.com/file/d/0B7bb6rcuRclFTG1jelRRU1d5UG8/view?resourcekey=0-GYiNXisFKPhhA489k0aGLw
семінарського заняття № 1
семінарського заняття № 1
Лабораторна робота №9 Створення графічного зображення
Мета: Навчитись створювати програми мовою Delphi
Завдання 1. Створити програму, яка можливостями мови створить малюнок. (Будинок, лужок, озеро, дерево, сонечко)
Завдання 2.
Виконати підпис малюнка (ПРІЗВИЩЕ) за допомогою графічних примітивів.
Оформити та продемонструвати роботу.
Завдання 3.
На Вашому попередньому малюнку (лабораторна робота 16) створити рухомий об'єкт. (Дивись приклад)
Додаткова інформація Метод Application.ProcessMessages
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls;
type
TForm1 = class(TForm)
Shape1: TShape;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
i:integer;
implementation
{$R *.dfm}
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Form1.BitBtn1.Visible:=false; //робимо кнопку старт невидимою
for i:=0 to (form1.clientwidth-shape1.Width) div 2 do
// цикл до половини заданої ширини форми форми
begin
shape1.Visible:=false; //фігуру зробили не видимою
shape1.Left:=shape1.Left+1; //змістили координату по Х
shape1.Top:= shape1.Top -1; //змістили координату по У
sleep(10); //затрика
shape1.Visible:=true; //фігуру зробили видимою
application.ProcessMessages; //метод який вимагає миттєвого виконання
end;
for i:=i to form1.clientwidth-shape1.Width do
begin
shape1.Visible:=false;
shape1.Left:=shape1.Left+1;
shape1.Top:= shape1.Top +1;
sleep(10);
shape1.Visible:=true;
application.ProcessMessages;
end;
Form1.BitBtn2.Visible:=true;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.BitBtn2.Visible:=false;
end;
end.
Робота з графікою в Delphi Малювання на формі або компоненті PaintBox
Малювання на формі або компоненті PaintBox...................................... 1
Приклад відео з використанням графіки................................................ 4
Робота з графікою в Delphi......................................................................... 4
Графічні можливості Delphi: Дуга, прямокутник, сектор, точка.......... 10
Дуга............................................................................................................ 10
Прямокутник............................................................................................. 10
Багатокутник............................................................................................ 11
Сектор....................................................................................................... 12
Крапка........................................................................................................ 12
Малюємо аналоговий годинник.............................................................. 15
Додатково посилання
Лабораторна робота №8 Створення програм з використанням дати та часу.
Мета: Навчитись створювати програми з використанням дати та часу.
Теоретичний матеріал посилання
Завдання 1. Організувати введення дати народження та сьогоднішньої дати. Провести розрахунок тривалості життя.
Завдання 2. Організувати введення двох дат та визначити часовий проміжок між цими датами.
Завдання 3 Ввести дати. Визначити день тижня. Скористатись формулами розрахунків "Як за датою обчислити день тижня?": посилання (https://genomukr.com/rizne/26518-jak-za-datoju-obchisliti-den-tizhnja.html) .
Завдання 4 Визначити час роботи вашої програми після її запуску. Інформацію відобразити у нижньому рядку: StatusBar .
Завдання 5 Написати програму визначення дати Великодня. Скоритсатися алгоритмом Гауса для обчислення дати Великодня. Посилання на вікіпедію. Для перевірки правильності роботи програми скористайтеся таблицею у Вікіпедії (дивись посилання).
Приклад коду:
newDate := IncDay(EncodeDate (Year, Month, Day) , 14); //використовується модуль DateUtils тут додаємо 14 днів EncodeDate створюю задану дату
form1.Label12.Caption:= DateToStr (newDate) ;
//dt:= now; // поточна дата
dt := form1.DateTimePicker1.Date; //визначена дата тобто введена з компоненту DateTimePicker
form1.Label11.Caption:= DateToStr (dt) ; //виводимо дату
difference := DaysBetween(newDate, dt); //використовується модуль DateUtils тут різницю днів
if dt<newDate then s:=''
else begin s:='пройшло'; newdt:=dt; dt:=newDate; newDate:=newdt; end;//переставити дати тобто прйшов час або пусто якщо дати розташовано вірно
form1.Label13.Caption:= s+intToStr (difference )+ ' днів ' ;
// Припустимо, що у вас є дві дати:
//date1 := EncodeDate(2022, 1, 1); // перша дата
//date2 := Now; // друга дата (поточна дата ≥ час)
// «находимо різницю між датами в місцях та днях
//monthsDifference := MonthsBetween(date1, date2);
//daysDifference := DaysBetween(date1, IncMonth(date1, monthsDifference));
monthsDifference := MonthsBetween(newDate, dt); //різниця у місяцях
daysDifference := DaysBetween(newDate, IncMonth(dt, monthsDifference)); //різниця у датах з урахуванням місяців
form1.Label15.Caption:=s+ ' кількість місяців: '+ IntToStr( monthsDifference)+ ' кількість днів: '+ IntToStr (daysDifference);
Введення та відображення дат та часу – компоненти DateTimePicker, MonthCalendar, Calendar
Стандартний тип дата-час - TDateTime, визначений у модулі System, є дійсне число типу Double, ціла частина якого задає число днів (у тому числі і негативне), що пройшли з 30 грудня 1899, а дробова частина - минулу частку поточного дня . Так, 35065.75 дає 1 січня 1996, 18.00.
У модулі SysUtils визначено низку стандартних функцій роботи з параметрами типу дати-часу.
Додатково матеріал ще один опис Процедур та функцій роботи з датою та часом
Модуль SysUtils (можливо трохи гірше описано чим у попередньому, зате коротко).
Компонент таблиця (матеріал 1), матеріал 2 посилання
Лабораторна робота №7 Створення програм з використанням таблиці
Мета: Навчитись створювати програми з використанням таблиць
Завдання 1.
Створити програму, яка буде виконувати розрахунки у наведеній таблиці:
Завдання 2 (на підвищену оцінку).
Таблиця – двомірне подання даних, упорядковане по стовпчикам та рядкам. Таблиці, зазвичай, мають заголовки. У зв'язку з цим таблиці поділяються на дві частини: фіксовану та робочу . Робоча частина може містити довільну кількість рядків та стовпців. Якщо вона не міститься в межах компонента, то в нього автоматично вбудовуються смуги прокручування.
Табличне подання можна використовуватиме введення та виведення даних, тобто. вміст комірок можна редагувати.
У Delphi використовуються два компоненти для представлення даних у вигляді таблиці: TStringGrid та TDrawGrid.
Лабораторна робота № 6 Створення програми мовою delphi з використанням багатосторінкового інтерфейсу. Вкладки PageControl
Вкладки PageControl
Компонент PageControl використовується для того, щоб можна було використовувати кілька що перекриває інші панелі (клас TTabSheet). Кожна панель вибирається пов'язаною з її закладкою і може містити, у свою чергу, свій набір розміщених на її компонентах.
Матеріал 2 витяг з книги
Лабораторна робота № 5 Створення програми мовою delphi з використанням меню
Мета: Навчитись складати та реалізовувати програми у середовищі delphi.
Компонент Delphi MainMenu Контекстное меню (PopupMenu)
Компонент Delphi MainMenu, Контекстне меню (PopupMenu)
Компонент Delphi MainMenu призначений для додавання в програму головного меню, елемента, без якого не буде ні одного з додатків для Windows.
Контекстне меню (PopupMenu), викликане в додатку Windows за натиском правою кнопкою миші, є стандартною і зручною можливістю багатьох програм. Компонент Delphi PopupMenu призначений для створення таких контекстних меню. Контекстне меню із-за способу свого прояву називають ще випливаючим меню.
Матеріал лістбокс та комбобокс
Комбо бокс
Компонент Delphi ComboBox є комбінацією списку рядків ListBox з рядком введення Edit . При цьому "список рядків" компонента Delphi ComboBox спочатку прихований, і розкривається при натисканні мишкою по трикутничку розкриття, який знаходиться праворуч у рядку введення/
Приклад,:
form1.Label2.Caption:= listbox1.Items [listbox1.itemindex];
form1.Label6.Caption:= inttostr(listbox1.itemindex);
Компонент Image
Компонент Image (вкладка Additional ) служить для розміщення на формі одного з трьох підтримуваних Delphi типів зображень: растрового малюнка ( *. bmp ), значка ( *.ico ) або метафайлу ( *.wmf або *.emf ).
Матеріал посилання 1
Приклад, як завантажити малюнок: form1.Image1.Picture.LoadFromFile('r1.jpg');
Невизуальный компонент ImageList предназначен для хранения в памяти последовательности (списка) небольших графических изображений формата BMP или ICO. посилання 3 сторінка 6.
Лабораторна робота № 4 Середовище delphi групування
Групування: компоненти GroupBox, Компонент Panel, Компонент Delphi ScrollBox
Група використовується переважно для візуального виділення функціонально пов'язаних керуючих елементів. Для роботи з групою Delphi надає компонент GroupBox , що задає прямокутну рамку із заголовком (властивість Caption) у лівому верхньому кутку і об'єднує елементи керування, що містяться в ньому.
Наприклад, на скріншоті група із заголовком «Заголовок групи» використовується для об'єднання перемикачів RadioButton .
Компонент Delphi Panel
Компонент Delphi Panel знаходиться на сторінці Standard Палітри Компонентів (значок на малюнку обведений червоним). Вибравши компонент Panel і натиснувши на формі ми побачимо прямокутник у центрі якого буде напис Panel1. Цифра 1 означає номер панелі формі, тобто. якщо нам необхідно помістити на форму ще 3 панелі, то їх імена будуть Panel2, Panel3, Panel4.
Властивість Name визначає ім'я панелі. Caption - заголовок, спочатку він збігається з Name і дорівнює Panel1, але у багатьох випадках його залишають порожнім. Часто панель використовують як контейнер для інших компонентів.
Приклад коду:
form1.Panel1.Visible:=true; //основна панель
form1.Panel2.Visible:=false;
Компонент Delphi ScrollBox (Область прокручування)
Компонент Delphi ScrollBox (Область прокручування) знаходиться на сторінці Additional Палітри компонентів.
При необхідності розміщення на формі великої кількості елементів, ніж те, що вона може розмітити у видимій області веде до появи смуги прокручування. Але при такому положенні можуть вийти з видимості важливі елементи: поля введення введення, командні кнопки та інші елементи керування, які для зручності роботи повинні бути завжди в полі зору.
За допомогою компонента ScrollBox ми можемо на одній формі розташувати області прокручування в тій кількості, в якій вони нам потрібні з необхідними об'єктами. Об'єкти програми розміщуються в компоненті ScrollBox так само, як і на звичайній формі. При встановленому якості AutoScroll в TRUE, лінії прокручування з'являються автоматично в міру їхньої потреби.
Приклад коду:
procedure TForm1.N25Click(Sender: TObject);
begin
scrollBox1.Show; //показати компонент
scrollBox1.VertScrollBar.Position:=0; //встановити вертикальний скролінг в позицію = 0
end;
Приклад коду на прокрутку колесико мишки:
procedure TForm1.ScrollBox1MouseWheelDown(Sender: TObject;
Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
begin
scrollbox1.VertScrollBar.Position:=scrollBox1.VertScrollBar.Position+12;
end;
procedure TForm1.ScrollBox1MouseWheelUp(Sender: TObject;
Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
begin
scrollbox1.VertScrollBar.Position:=scrollBox1.VertScrollBar.Position-12;
end;