(Vi) Evento de ação de Tmainform (imagem)
1) Captura de tela cheia
[Capture Desktop] Evento de ação
Procedimento tmainform.cptdesktopexecute (remetente: tabject);
Começar
Inc (Captenum, 1);
Application.Minimize;
Atraso (500);
Nome do arquivo: = 'Capture'+inttoStr (Captenum)+'. BMP';
Nome do arquivo: = defaultDirectory+nome do arquivo;
Createmdichild (nome do arquivo, verdadeiro);
StatusBar.simpletext: = nome do arquivo;
Com o ActiveMdichild como tmdichild
Image1.picture.bitmap: = CaptureScreen;
HorzScrollBar.Range: = Image1.picture.width;
VertscrollBar.Range: = Image1.picture.Height;
fim;
Child.Image1.hint: = 'Hight:'+inttostr (Child.image1.picture.Height)+'Pixels'
+'Largura:'+inttostr (Child.image1.picture.width)+'pixels';
Application.restore;
fim;
2) Captura de área
Para capturar imagens de área, um novo Form1 é usar, consulte "Exemplo de programação de interceptação de imagem Delphi (6)".
Adicione Capture1 nos usos da implementação da unidade principal.
Adicione um processo privado na unidade principal Captearea:
procedimento tmainform.CaptureArea;
Começar
com tForm1.Create (Application) do
tentar
Se ShowModal = Mrok então
Com o Frect, comece
se (direita> esquerda) e (parte inferior> superior), então comece
Atraso (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;
final mais começa
Messagedlg ('Selecione a área da imagem incorretamente, selete!', Mtinformation, [mBok], 0);
Child.Close;
Form1.free;
saída;
fim;
fim;
Finalmente
Livre;
fim;
fim;
[Área de captura] Evento de ação para captura de área
procedimento tmainform.cptareaexecute (remetente: tobject);
Começar
Inc (Captenum, 1);
Application.Minimize;
Atraso (500);
Nome do arquivo: = 'Capture'+inttoStr (Captenum)+'. BMP';
Nome do arquivo: = defaultDirectory+nome do arquivo;
{Crie Janela Child MDI}
Createmdichild (nome do arquivo, verdadeiro);
StatusBar.simpletext: = nome do arquivo;
{Área de captura da tela}
Captereea;
Child.Image1.hint: = 'Hight:'+inttostr (Child.image1.picture.Height)+'Pixels'
+'Largura:'+inttostr (Child.image1.picture.width)+'pixels';
Application.restore;
fim;