(سادسا) حدث عمل tmainform (الصورة)
1) التقاط شاشة ملء الشاشة
[Capture Desktop] حدث الحركة
الإجراء tmainform.cptdesktopexecute (المرسل: tobject) ؛
يبدأ
INC (Capturenum ، 1) ؛
application.minimize ؛
التأخير (500) ؛
اسم الملف: = 'capture'+inttoStr (capturenum)+'. BMP' ؛
اسم الملف: = DefaultDirectory+اسم الملف ؛
CreateMdichild (اسم الملف ، صحيح) ؛
statusbar.simpletext: = اسم الملف ؛
مع ActiveMdichild كما تبدأ tmdichild
Image1.picture.bitmap: = captures
horzscrollbar.range: = image1.picture.width ؛
vertscrollbar.range: = image1.picture.height ؛
نهاية؛
child.image1.hint: = 'الارتفاع:'+inttostr (child.image1.picture.height)+'pixels'
+"العرض:"+inttoStr (child.image1.picture.width)+'pixels' ؛
Application.Restore ؛
نهاية؛
2) التقاط المنطقة
لالتقاط صور المنطقة ، يتم استخدام Form1 الجديد ، راجع "مثال برمجة اعتراض الصور Delphi (6)".
أضف capture1 في استخدامات تنفيذ الوحدة الرئيسية.
أضف عملية خاصة في الوحدة الرئيسية Capturearea:
الإجراء tmainform.captureArea ؛
يبدأ
مع tform1.create (التطبيق) do
يحاول
إذا showmodal = mrok ثم
مع FRECT تبدأ
إذا (يمين> يسار) و (أسفل> أعلى) ثم ابدأ
التأخير (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 ؛
نهاية أخرى تبدأ
messagedlg ('حدد منطقة الصورة بشكل غير صحيح ، يرجى إعادة التصميم! "، mtinformation ، [mbok] ، 0) ؛
الطفل.
form1.free ؛
مخرج؛
نهاية؛
نهاية؛
أخيراً
حر؛
نهاية؛
نهاية؛
[منطقة الالتقاط] حدث الحركة لالتقاط المنطقة
الإجراء tmainform.cptareaexecute (المرسل: tobject) ؛
يبدأ
INC (Capturenum ، 1) ؛
application.minimize ؛
التأخير (500) ؛
اسم الملف: = 'capture'+inttoStr (capturenum)+'. BMP' ؛
اسم الملف: = DefaultDirectory+اسم الملف ؛
{إنشاء نافذة الطفل mdi}
CreateMdichild (اسم الملف ، صحيح) ؛
statusbar.simpletext: = اسم الملف ؛
{منطقة التقاط الشاشة}
كابتوريا
child.image1.hint: = 'الارتفاع:'+inttostr (child.image1.picture.height)+'pixels'
+"العرض:"+inttoStr (child.image1.picture.width)+'pixels' ؛
application.restore ؛
نهاية؛