Winforms - изображение окна, включая фрейм (BitBlt) - PullRequest
0 голосов
/ 25 декабря 2011

Я нашел в сети некоторый код, который захватывает текущее окно и копирует его в растровое изображение.Я включил соответствующий бит ниже.В настоящее время он копирует клиентскую область, но я бы тоже хотел получить кадр.Есть ли способ получить ручку этого?Поэтому я бы хотел сделать снимок всего окна, включая кнопку максимизации, кнопку управления и т. Д.

1 Ответ

3 голосов
/ 26 декабря 2011

Просто используйте метод DrawToBitmap () формы:

        using (var bmp = new Bitmap(this.Width, this.Height)) {
            this.DrawToBitmap(bmp, new Rectangle(Point.Empty, this.Size));
            bmp.Save("c:/temp/test.png");
        }

Graphics.CopyFromScreen () - это еще один способ, аналогичный тому, что вы делаете сейчас. Он на самом деле копирует изображение с экрана, а не просит форму нарисовать себя в растровое изображение. С тем же недостатком, форма должна быть видимой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...