курсовые,контрольные,дипломы,рефераты
Есть программы, которые позволяют увеличивать определённую область экрана в районе курсора мышки. Нам понадобится одна форма, один элемент управления image, одна панель, таймер и бегунок. Добавляем к форме картинку и панель. Размещаем остальные элементы управления на панели. Бегунок будет изменять степень увеличения экрана. Теперь всё готово к программированию. Но предварительно Вам необходимо изменить некоторые свойства у Ваших элементов управления. Свойство min компонента TrackBar должно быть равно 1, свойство Interval Вашего таймера также сделайте равным 1. Теперь напишем сам код, все основные действия будут происходить только при возникновении события OnTimer, поэтому приведу только его обработчик:
procedure
TForm1.Timer1Timer(Sender: TObject);
Var
Srect,Drect,PosForme:TRect;
iWidth,iHeight,DmX,DmY:Integer;
iTmpX,iTmpY:Real;
C:TCanvas;
Kursor:TPoint;
begin
If not
IsIconic(Application.Handle) then begin
//
Получаем
координаты
курсора
GetCursorPos(Kursor);
// PosForm представляет
прямоугольник с
//
координатами
Form (image control).
PosForme:=Rect(Form1.Left,
Form1.Top,
Form1.Left+Form1.Width,
Form1.Top+Form1.Height);
//Показываем
magnified
screen
//если курсор за пределами
формы.
If not
PtInRect(PosForme,Kursor) then begin
// Далее код можно
использовать для увеличения выбранной
// части экрана. С
небольшими модификациями его можно
// использовать для
уменьшения
// экрана
iWidth:=Image1.Width;
iHeight:=Image1.Height;
Drect:=Bounds(0,0,iWidth,iHeight);
iTmpX:=iWidth /
(TrackBar1.Position * 4);
iTmpY:=iHeight /
(TrackBar1.Position * 4);
Srect:=Rect(Kursor.x,Kursor.y,Kursor.x,Kursor.y);
InflateRect(Srect,Round(iTmpX),Round(iTmpY));
//Получаем
обработчик(handle) окна рабочего стола.
C:=TCanvas.Create;
try
C.Handle:=GetDC(GetDesktopWindow);
//Передаём часть изображения
окна в TImage.
Image1.Canvas.CopyRect(Drect,C,Srect);
finally
C.Free;
end
;
end
;
// Обязательно обрабатываем
все сообщения
Windows
.
Application.ProcessMessages;
end; // IsIconic
end;
Как оказалось, все не так уж сложно, это уже готовый к употреблению код, который Вы с успехом можете применять в своих программах!
Список литературы
Михаил Христосенко. Увеличение области экрана с помощью Delphi.
Для подготовки данной работы были использованы материалы с сайта статьи http://delphid.dax.ru.
Есть программы, которые позволяют увеличивать определённую область экрана в районе курсора мышки. Нам понадобится одна форма, один элемент управления image, одна панель, таймер и бегунок. Добавляем к форме картинку и панель. Размещаем остальные э
Различные способы печати из приложений
Динамические структуры данных: стеки
Анализ пакетов обработки экспериментальных данных SABR и BOOTSTRAP
Весь цвет Кибернета
Антиспам. Два метода защиты от спама
Динамические структуры данных: стеки
Информационная безопасность в сетях ЭВМ
Операционная система DOS
Естественно-научная база современных информационных технологий. Современные средства накопления, хранения и передачи информаци
Расчет себестоимости и цены программного продукта по учету прерываний на языке Ассемблер
Copyright (c) 2024 Stud-Baza.ru Рефераты, контрольные, курсовые, дипломные работы.