(Vi) Evento de acción de TmainForm (imagen)
1) Captura de pantalla completa
[Capture Desktop] Evento de acción
Procedimiento tmainform.cptDeskTopExecute (remitente: tobject);
Comenzar
Inc (CaptureNum, 1);
aplicación.minimizar;
Retraso (500); //
FileName: = 'Capture'+intToStr (captureNum)+'. Bmp';
Nombre de archivo: = defaultDirectory+nombre de archivo;
Createmdichild (nombre de archivo, verdadero);
Statusbar.simpletext: = FileName;
con activemdichild como tmdichild comienza
Image1.picture.bitmap: = capturescreen;
Horzscrollbar.range: = image1.picture.width;
Vertscrollbar.range: = image1.picture.height;
fin;
Child.image1.hint: = 'altura:'+intToStr (child.image1.picture.height)+'píxeles'
+'Ancho:'+intToStr (child.image1.picture.width)+'píxeles';
Application.Restore;
fin;
2) Captura de área
Para capturar las imágenes de área, un nuevo Form1 es usar, consulte "Delphi Image Intercept Ejemplo de programación (6)".
Agregue Capture1 en los usos de la implementación de la unidad principal.
Agregue un proceso privado en la unidad principal CaptureAea:
procedimiento tmainform.captureArea;
Comenzar
con tform1.create (aplicación) do
intentar
Si showModal = Mrok entonces
con frect hacer comienza
if (derecha> a la izquierda) y (abajo> arriba) entonces comience
Retraso (400);
Abitmap: = tbitmap.create;
Abitmap.assign (capturescreenrect (frect));
Child.image1.picture.bitmap: = abitmap;
Child.ClientWidth: = child.image1.picture.width;
Child.ClientHeight: = Child.image1.Picture.Height;
Child.horzscrollbar.range: = child.image1.picture.width;
Child.vertscrollbar.range: = child.image1.picture.height;
Abitmap.Free;
Fin El otro comienzo
Messagedlg ('Seleccione el área de la imagen incorrectamente, reselíe!', MtInformation, [mbok], 0);
Niño. Cerca;
Form1.free;
salida;
fin;
fin;
Finalmente
Gratis;
fin;
fin;
[Área de captura] Evento de acción para la captura del área
procedimiento tmainform.cptareaExecute (remitente: tobject);
Comenzar
Inc (CaptureNum, 1);
Aplicación.minimize;
Retraso (500);
FileName: = 'Capture'+intToStr (captureNum)+'. Bmp';
Nombre de archivo: = defaultDirectory+nombre de archivo;
{Crear ventana infantil MDI}
Createmdichild (nombre de archivo, verdadero);
Statusbar.simpletext: = FileName;
{Área de captura de la pantalla}
Cautuearea;
Child.image1.hint: = 'altura:'+intToStr (child.image1.picture.height)+'píxeles'
+'Ancho:'+intToStr (child.image1.picture.width)+'píxeles';
Application.Restore;
fin;