Привет, я создал программу для захвата области выбора.
. Когда программа запускается, она делает форму самой верхней, так что всегда она верхняя для другой программы, также я прозрачную форму, это помогает захватить область выбора с помощьюзахватить форму, у меня есть некоторые элементы управления, такие как кнопка это я хочу видеть всегда, когда сделать захват
вот какой код я использую прозрачным и сделать самый верхний
private void Form1_Load(object sender, EventArgs e)
{
timer1.Interval = (1000/30);
timer1.Start();
TransparencyKey = Color.LightBlue;
BackColor = Color.LightBlue;
FormBorderStyle = FormBorderStyle.None;
DoubleBuffered = true;
SetStyle(ControlStyles.ResizeRedraw, true);
TopMost = true;
}
Вы можете выбрать нужную область путем перетаскивания или изменения размера формы. Я рисую прямоугольник для границы.
Я использую таймер, поэтому при запуске программы начинаем захватывать, пока пользователь не закроет программу
.проблема его захвата также элементы управления, такие как кнопка у меня в центре
это я хочу скрыть, я нашел решение, чтобы скрыть, прежде чем сделать захват и показать снова эту работу хорошо, но он мигаетвсе элементы управления, и это причиняет боль в глазах, вот пример, когда делают захват
private void timer1_Tick(object sender, EventArgs e)
{
Opacity = 0.0; // hide form
var image = CaptureDesktopSize(Cam); // capture
pictureBox1.Image = image;
image.Save(@"C:/data/V.png", ImageFormat.Png);
Opacity = 1.0; // show form
}
, есть способ сделать это, чтобы скрыть элементы управления, которые я не хочуt
я работаю с C #
большое спасибо за этот мой первый вопрос :) я новый пользователь
вот еще один скриншот, чтобы понять, что я имею в виду
введите описание изображения здесь