(Vi) acara aksi (gambar) TMAintForm
1) Penangkapan Layar Penuh
[Capture Desktop] Action Event
Prosedur tMainForm.cptdesktopexeCute (pengirim: tobject);
Mulai
Inc (Capturenum, 1);
application.membunyikan; // bentuk minimalisasi
Penundaan (500);
Nama file: = 'capture'+inttoStr (capturenum)+'. Bmp';
Nama file: = DefaultDirectory+nama file;
CreateMdichild (nama file, true);
Statusbar.simpleText: = fileName;
dengan activeMdichild sebagai tmdichild dimulai
Image1.picture.bitmap: = CaptureCreen; // Capture Pictures
Horzscrollbar.range: = image1.picture.width;
Vertscrollbar.range: = image1.picture.height;
akhir;
Child.image1.hint: = 'Tinggi:'+inttoStr (Child.image1.picture.height)+'piksel'
+'Lebar:'+inttoStr (Child.image1.picture.width)+'piksel';
Application.Restore;
akhir;
2) Penangkapan Area
Untuk menangkap gambar area, Form1 baru adalah menggunakan, lihat "Contoh Pemrograman Intercept Image Delphi (6)".
Tambahkan Capture1 dalam penggunaan implementasi unit utama.
Tambahkan proses pribadi di unit utama Capturearea:
Prosedur tMainForm.Capturearea;
Mulai
dengan tform1.create (aplikasi) do
mencoba
Jika showmodal = mrok maka
dengan festre mulai
if (kanan> kiri) dan (bagian bawah> atas) lalu mulailah
Tunda (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;
akhir lagi dimulai
MessagedLG ('Pilih area gambar secara tidak benar, silakan pilih kembali!', Mtinformation, [mbok], 0);
Anak.
Form1. bebas;
KELUAR;
akhir;
akhir;
Akhirnya
Bebas;
akhir;
akhir;
Acara Aksi [Capture Area] untuk Capture Area
Prosedur tMainForm.cptareaExecute (pengirim: tobject);
Mulai
Inc (Capturenum, 1);
Application.minimize;
Tunda (500);
Nama file: = 'capture'+inttoStr (capturenum)+'. Bmp';
Nama file: = DefaultDirectory+nama file;
{Buat jendela anak MDI}
CreateMdichild (nama file, true);
Statusbar.simpleText: = fileName;
{Capture Area layar}
Capturearea;
Child.image1.hint: = 'Tinggi:'+inttoStr (Child.image1.picture.height)+'piksel'
+'Lebar:'+inttoStr (Child.image1.picture.width)+'piksel';
Application.Restore;
akhir;