Студопедия — with(sender as TForm).canvas do
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

with(sender as TForm).canvas do






Begin

pen.Color:=clRed;

pen.Width:=4;

end;

(sender as TForm).Canvas.MoveTo(x1,y1);

(sender as TForm).Canvas.lineTo(x2,y2);

With(sender as TForm).canvas do

Begin

pen.Color:=clBlack;

pen.Width:=1;

end;

end;

11. На форму Form2 виставляють кнопку Button5 і надають її властивості сaption значення < виділення курсором >. Подвійним клацанням створюють заготовку процедури Button5Click і у її тіло вкладають процедуру figura2_show із параметром sender, якому надане фактичне значення - Form2 і параметрами x1,y1,x2,y2, значення яким передбачається надавати користувачем з допомогою курсора і мишки у події OnMouseDown.

procedure TForm2.Button5Click(Sender: TObject);

Begin

figura2_show (form2,x1,y1,x2,y2);

end;

12. Для того, щоб значення параметрів можна було передавати між різними подіями дооголошують їх у розділі декларації зміннихмодуля. Отже серед глобальних оголошень дописано: x1,y1,x2,y2: integer.

var Form2: TForm2; sx,sy:integer; x1,y1,x2,y2:integer;

13. На вікні форми вистваляють зверху - донизу додаткові компоненти: SpinEdit1, SpinEdit2, SpinEdit3, SpinEdit4. Вони призначені для візуалізації координат курсора під-час вибору розміщення точки (x1,y1) і точки (x2,y2).

14. Доопрацьовують існуючу процедуру FormMouseDown, прописуючи у ній додаткові кодові рядки:

if (button=mbmiddle) then

Begin

x1:=X;

y1:=Y;

spinedit1.Value:=x1;

spinedit2.Value:=y1;

end;

if ((ssctrl in shift) and (button=mbright)) then

Begin

x2:=X; spinedit3.Value:=x2;

y2:=Y; spinedit4.Value:=y2;

end;

15. Запускають прикладну програму. Натискаючи середню клавішу мишки у потрібному місці вікна застосунку отримують значення x1 у полі SpinEdit1 і y1 у полі SpinEdit2. Натискаючи праву клавішу мишки і одночасно утримуючи клавішу Ctrl у потрібних місцях вікна форми мають значення x2 у полі SpinEdit3 і y2 у полі SpinEdit4.

Зауваження: подія OnMouseDown на відміну від OnMouseup частенько даватиме збій, оскільки відпускання клавіші є однозначною подією, а натискання доволі неоднозначною. Отже мова про те, що потрібно буде уважно контролювати стан натиснутої клавіші мишки.

16. Натискають кнопку < виділення курсором > і спостерігають за появою передбаченої червоної жирної лінії (рисунок 25).

16.1. Якщо з коду figura2_show (пункт 10) прибрати фрагмент повернення до чорного кольору і товщини в один піксель, то після натискання на кнопку < витерти все > отримаємо грубу координатну сітку червоного кольру (рисунок 26). Та й натискання на кнопку <; мережа колон> призведе до червоного їх контуру.

Рисунок 25 - встановлена за вказаними курсорсором координатами 117,180, 212,114 червона лінія

Рисунок 26 – координатна сітка «потовщала і почервоніла»

17. Доповнюють опрацювання події Button5Click фрагментом підкреслоного нижче коду, що надаватиме можливість користувачеві власноруч виставляти координати червоних потовщених обмежувальних ліній.

procedure TForm2.Button5Click(Sender: TObject);

Begin

x1:= spinedit1.Value;

y1:= spinedit2.Value;

x2:= spinedit3.Value;

y2:= spinedit4.Value;

 

figura2_show (form2,x1,y1,x2,y2);

end;

18. Змінюють числове значення у полі SpinEdit4 від 114 пікселів (рисунок 25) до 134 пікселів (рисунок 27).

Рисунок 27 – Зміщення правої точки обмежувальної лінії вниз

19. Натискають кнопку < виділення курсором > і отримують зміщення правої точки додолу на 20 пікселів (рисунок 27).







Дата добавления: 2015-09-07; просмотров: 354. Нарушение авторских прав; Мы поможем в написании вашей работы!



Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...

Картограммы и картодиаграммы Картограммы и картодиаграммы применяются для изображения географической характеристики изучаемых явлений...

Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Прием и регистрация больных Пути госпитализации больных в стационар могут быть различны. В цен­тральное приемное отделение больные могут быть доставлены: 1) машиной скорой медицинской помощи в случае возникновения остро­го или обострения хронического заболевания...

ПУНКЦИЯ И КАТЕТЕРИЗАЦИЯ ПОДКЛЮЧИЧНОЙ ВЕНЫ   Пункцию и катетеризацию подключичной вены обычно производит хирург или анестезиолог, иногда — специально обученный терапевт...

Ситуация 26. ПРОВЕРЕНО МИНЗДРАВОМ   Станислав Свердлов закончил российско-американский факультет менеджмента Томского государственного университета...

Выработка навыка зеркального письма (динамический стереотип) Цель работы: Проследить особенности образования любого навыка (динамического стереотипа) на примере выработки навыка зеркального письма...

Словарная работа в детском саду Словарная работа в детском саду — это планомерное расширение активного словаря детей за счет незнакомых или трудных слов, которое идет одновременно с ознакомлением с окружающей действительностью, воспитанием правильного отношения к окружающему...

Правила наложения мягкой бинтовой повязки 1. Во время наложения повязки больному (раненому) следует придать удобное положение: он должен удобно сидеть или лежать...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия