delphi4arab منتديات دلفي للعرب

نسخة كاملة : على ماذا يعتمد تصوير الشاشة على شكل فيديو'avi'
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم

على ماذا يعتمد تصوير الشاشة على شكل فيديو'avi'
اي ماهية الوظائف والاجراءات المتبعة .
وشكرا.
السلام عليكم ورحمة الله وبركاتة
ليس لدي جواب لكني ساعطيك ما لدي ...

من ناحية الفكرة العامة :
سبق وان رأيت سروس كود برنامج لتصوير الشااشة ... كان يقوم بإلتقاط صور باقل من جز من الثانية ....
وبعد ان تضغط زر إنهاء التصوير يمت دمج الصور باحد الاكود

اما من ناحية اوامر التصوير ... حصلت على هذه الطريقة لاخذ صورة لشاشتك ووضعها في مكون TImage
ارفقت مثال ...

اتمنى اني افدتك ... والسلام عليكم ورحمة الله وبركاتة
شكرا جزيلا اخي الكريم .
لقد جربت سابقا الطريقة الاولى اي اخذ صور متتابعة
لكنها تبطىء من سرعة الجهاز عداك عن التقطيع في مؤشر الفأرة
عسى ان تكون الطريقة الجديدة انجع
شكرا.
اخي يوجد شيء اسمه Thread وهو سريع جداً مقارنة ان تضع الامر بـ Timer وعند استعماله ضع الامر Sleep لكي يكون الامر
جيد ولا يحصل اي تهنيق او بطئ بالجهاز ( لم اجرب الطريقة لكني اعرف ان الـ Thread سيرع جداً Smile )

إقتباس :عداك عن التقطيع في مؤشر الفأرة
اضن هذه الحالة طبيعيه مع جميع برامج التصوير عدا التي تستعمل طرق ملتوية .. لجعل مؤشر الماوس لا يقطع اثناء التصوير

بالنسبة للـ Thread لا املك الخبيرة الكافية التي تخولني لشرحه لك Smile ... ابحث بالمنتدى ستجد مواضيع تتكلم عنه ..

تحياتي

والسلام عليكم
تعديل بسيط لدعم التقاط مؤشر الفأرة
PHP كود :
var
  
DC : HDC;
  
Re : TRect;
  
WidthWin, HeightWin : Integer;
  
BitmapScreen : TBitmap;
  
rPos:TPoint;
  
cInfo :TCursorInfo;

begin

  DC 
:= GetDC(GetDesktopWindow);
  
WidthWin := GetDeviceCaps(DC, HORZRES);
  
HeightWin := GetDeviceCaps(DC, VERTRES);
  
img1.Width := WidthWin;
  
img1.Height := HeightWin;
  
cInfo.cbSize := SizeOf(cInfo);
  
GetCursorInfo(cInfo);
  
GetCursorPos(rPos);
  
BitBlt(img1.Canvas.Handle,0,0,img1.Width,img1.Height,
  
DC,0,0,SRCCOPY);
  
DrawIcon(img1.Canvas.Handle,rPos.X,rPos.Y,cInfo.hCursor);
  
ReleaseDC(GetDesktopWindow,DC);

end;