Операционная система Windows предоставляет возможность
Операционная система Windows предоставляет возможность снятия снимков с экрана (скриншотов) — при нажатии клавиши Print Screen текущее изображение помещается в буфер обмена. Затем можно вставить изображение непосредственно в документ или графический редактор — для последующего сохранения в нужном формате. Сделаем что-то подобное — простое приложение для фотографирования экрана и последующего сохранения изображений. Создайте новое Windows-приложение и назовите его ScreenShot. Добавляем на него одну кнопку и устанавливаем следующие значения формы и кнопки:
FormBorderStyle | FixedSingle |
Size | 174; 94 |
Text | ScreenShot! |
Name | btnCreate |
BackgroundImage | Code\Glava5\ScreenShot\Image\button.bmp |
Location | 0; 0 |
Size | 176; 64 |
Text |
Из окна Toolbox перетаскиваем на форму элемент управления SaveFileDialog — его свойства установим программно. Добавляем класс к проекту и называем его ScreenShotDll.cs. Далее привожу полный листинг этого класса с комментариями:
Листинг 5.12.
(html, txt)
Вся функциональность практически готова. Осталось только добавить обработчик кнопки btnCreate:
private void btnCreate_Click(object sender, System.EventArgs e) {
SaveFileDialog diag = new SaveFileDialog(); diag.Filter = "Файлы bmp|*.bmp"; if(diag.ShowDialog() != DialogResult.OK) return; // Получаем адрес файла. string filename = diag.FileName; // Создаем экземпляр класса ScreenShotDll ScreenShotDll shoter = new ScreenShotDll(); // Создаем и сохраняем изображение. shoter.CaptureScreen(filename, System.Drawing.Imaging.ImageFormat.Bmp);
}
Запускаем приложение (рис. 5.10). После нажатия на кнопку задаем в появившемся окне SaveFileDialog имя файла и сохраняем его.
увеличить изображение
Рис. 5.10. Приложение ScreenShot! и сделанный им снимок
На диске, прилагаемом к книге, вы найдете приложение ScreenShot (Code\Glava5\ScreenShot).
Листинг 5.12.
Вся функциональность практически готова. Осталось только добавить обработчик кнопки btnCreate:
private void btnCreate_Click(object sender, System.EventArgs e) {
SaveFileDialog diag = new SaveFileDialog(); diag.Filter = "Файлы bmp|*.bmp"; if(diag.ShowDialog() != DialogResult.OK) return; // Получаем адрес файла. string filename = diag.FileName; // Создаем экземпляр класса ScreenShotDll ScreenShotDll shoter = new ScreenShotDll(); // Создаем и сохраняем изображение. shoter.CaptureScreen(filename, System.Drawing.Imaging.ImageFormat.Bmp);
}
Запускаем приложение (рис. 5.10). После нажатия на кнопку задаем в появившемся окне SaveFileDialog имя файла и сохраняем его.
увеличить изображение
Рис. 5.10. Приложение ScreenShot! и сделанный им снимок
На диске, прилагаемом к книге, вы найдете приложение ScreenShot (Code\Glava5\ScreenShot).