Можно ли из Delphi рисовать в любой части экрана или в чужом окне

Советы » Монитор и Экран » Можно ли из Delphi рисовать в любой части экрана или в чужом окне

Для этого надо воспользоваться функциями API. Получить контекст чужого окна, либо всего экрана:

function

GetDC(Wnd: HWnd): HDC;

где Wnd - указатель на нужное окно, или 0 для получения контекста всего экрана. И далее, пользуясь функциями API, нарисовать все что надо.

procedure

DrawOnScreen; var

ScreenDC: hDC; begin

ScreenDC := GetDC(0); {получить контекст экрана} Ellipse(ScreenDC, 0, 0, 200, 200); {нарисовать} ReleaseDC(0, ScreenDC); {освободить контекст} end

;

Не забывайте после своих манипуляций посылать пострадавшим (или всем) окнам сообщение о необходимости перерисовки, для восстановления их первоначального вида.

Другое по теме:

Категории

Статьи

Советы

Copyright © 2023 - All Rights Reserved - www.delphirus.com