Вторник, 03.12.2024, 20:05
Главная | Регистрация | Вход Приветствую Вас Гость | RSS


Меню сайта


Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0


Тестування онлайн
тестування онлайн 


Социальные закладк

Тема . Графічне відображення даних мовою програмування

Графічні об'єкти у проектах, розроблених у Lazarus, можна створювати та відображати різними способами.

Наприклад:

1. Використовування малюнків, збережених у зовнішніх файлах.

       У проектах можна відображати зображення, що містяться у зовнішніх файлах. Для цього призначений компонент Область зображення.

        Для його розміщення на формі потрібно двічі клацнути на кнопці TImage (англ. image - зображення) на вкладці Additional у вікні середовища Lazarus.

Властивості Області зображення Name, Enabled, Visible аналогічні до відповідних властивостей форми. Як і для форми, значення властивостей області зображення Top, Left, Height і Width можна змінити або на вкладці Властивості, або перетягуванням.
 

Відображення зображення, що міститься у зовнішньому файлі, визначається значенням таких властивостей:

Приклад відображення у проекті зображення, встановленого із зовнішнього файлу.

        

  Для виведення зображення в область компонента  Imаge потрібно: 

1.    У вікні Інспектор об’єктів вибрати властивість  Picture і клацнути кнопку ... 

2.    Клацнути кнопку Завантажити вікна  Діалог завантаження зображення .
3.    Вибрати файл у діалоговому вікні вибору файла. 
4.   Підтвердити кнопкою Гаразд        
 Якщо розміри зображення більші від розмірів компонента, то властивості Stretch потрібно присвоїти значення True. Розміри малюнка  зміняться  відповідно  до   реальних розмірів компонента Image.

 

Вправа 1. Створення проекту, форма якого містить малюнок, що збережений  у зовнішньому файлі. При натисненні кн.Збільшити розміри малюнка  збільшуються (імітується ефект наближення).

Варіант виконання:

Интерфейс проекта


Программный код
procedure TForm1.Button1Click(Sender: TObject);
begin
  image1.top:= image1.top + 4;
  image1.left:= image1.left + 4;
  image1.height := image1.height + 10;
  image1.width := image1.width + 10;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  image1.top:= 16;
  image1.left:= 40;
  image1.height := 40;
  image1.width := 32;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
    image1.top:= 16;
  image1.left:= 40;
  image1.height := 40;
  image1.width := 32;
  form1.top:= 265;
  form1.left:= 144;
end;         

 

  2.Pозміщення на формі фігур (прямокутника, еліпса, трикутника, ромба, ...) за допомогою компонента Shape (фігура) .

1. Щоб розмістити фігуру на формі, потрібно двічі клацнути на кнопці TShape (англ. shape - форма, фігура) на вкладці Additional (англ. additional - додатковий) вікна середовища Lazarus. За замовченням на екранній формі буде розміщено прямокутник.

2. Щоб змінити форму фігури, використовують ластивість Shape.

3. Властивості фігури Name, Enabled, Visible  аналогічні до відповідних властивостей форми. 

4. Як і для форми, значення властивостей фігури Тор, Left, Height і Width можна змінити або на вкладці Властивості, або перетягуванням. 
 

  • Зміна кольору  фігури та стилю заливки (Color, Style)  -  використовують властивість Brush, наприклад:

В програмному коді :

Shape1.Brush.Color := clTeal;
Shape1.Brush.Style := bsBDiagonal;

 У середовищі Lazarus властивість Color може набувати фіксованого набору значень:

До об'єктів Shape найчастіше застосовують події: 

  • Переміщення миші -OnMouseMove ;
  • Натиснення кнопки миші -  OnMouseDown ;
  • Відпускання кнопки миші - OnMouseUp ;

Події OnMouseDown та OnMouseUp відбуваються, якщо клацнути мишею на фігурі, яка розміщена на формі, — у цьому разі відбувається і натиснення, і відпускання кнопки миші.
 

Вправа 2. Розмістити на формі компоненти Фігура, поексперементувати із властивістью Brush, наприклад:

Интерфейс проекта

Программный код

procedure TForm1.Shape1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
      Shape1.Brush.Color := clGreen;
  Shape1.Brush.Style := bshorizontal;
end;

 

procedure TForm1.Shape1MouseUp(Sender: TObject; Button: TMouseButton;  Shift: TShiftState; X, Y: Integer);
 begin
        Shape1.Brush.Color := clPurple;
  Shape1.Brush.Style := bsBDiagonal;
 end;  
 procedure TForm1.Label1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);

 begin
  Shape2.Brush.Color := clPurple;
  Shape2.Brush.Style := bsSolid;
 end;

procedure TForm1.Label2MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);

begin
      Shape2.Brush.Color := clLime;
  Shape2.Brush.Style := bsDiagCross;
end;  

Вправа 3.  Перетворення.

 Интерфейс проекта

 

 Программный код

procedure TForm1.Shape1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if radiogroup1.ItemIndex = 0 then shape1.brush.Color:=clgreen;
  if radiogroup1.ItemIndex = 1 then shape1.brush.Color:=clblue;
  if radiogroup1.ItemIndex = 2 then shape1.brush.Color:=clred;
end;

procedure TForm1.Shape2MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
    if radiogroup1.ItemIndex = 0 then shape2.brush.Color:=clgreen;
  if radiogroup1.ItemIndex = 1 then shape2.brush.Color:=clblue;
  if radiogroup1.ItemIndex = 2 then shape2.brush.Color:=clred;  
  if radiogroup2.ItemIndex = 0 then shape2.brush.style:=bshorizontal;
  if radiogroup2.ItemIndex = 1 then shape2.brush.style:=bsvertical;
  if radiogroup2.ItemIndex = 2 then shape2.brush.style:=bssolid;
end;                               

 

продовження
практична робота

 

Форма входа
Поиск
Календарь
«  Декабрь 2024  »
ПнВтСрЧтПтСбВс
      1
2345678
9101112131415
16171819202122
23242526272829
3031
Архив записей
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • Рейтинг@Mail.ru
    Copyright MyCorp © 2024
    Конструктор сайтов - uCoz