Вы можете увидеть пример реального кода в https://uiautomationverify.codeplex.com/SourceControl/latest#UIAVerify/Tools/visualuiverify/utils/screenrectangle.cs
Рисует прямоугольник, который будет отображаться на экране до тех пор, пока пользователь не решит удалить его в произвольной позиции (перекрашивать не будет). Он использует форму окна, которая скрыта / отображается как всплывающее окно.
Это код инструмента UIAVerify.exe
в текущем Windows SDK.
Если вы хотите использовать вышеизложенное, скопируйте следующие файлы в ваш проект:
utils\screenboundingrectangle.cs
utils\screenrectangle.cs
win32\*
Возможно, потребуется соответствующим образом обновить пространства имен + добавить ссылки на System.Drawing
+ System.Windows.Forms
Затем вы можете нарисовать прямоугольник со следующим кодом:
namespace Something
{
public class Highlighter
{
ScreenBoundingRectangle _rectangle = new ScreenBoundingRectangle();
public void DrawRectangle(Rectangle rect)
{
_rectangle.Color = System.Drawing.Color.Red;
_rectangle.Opacity = 0.8;
_rectangle.Location = rect;
this._rectangle.Visible = true;
}
}
}
и
var rect = Rectangle.FromLTRB(100, 100, 100, 100);
var hi = new Highlighter();
hi.DrawRectangle(rect);