![]() |
|
كيف يتم رسم مستطيل شفاف - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : كيف يتم رسم مستطيل شفاف (/showthread.php?tid=5222) |
كيف يتم رسم مستطيل شفاف - Anew - 14-05-2013 السلام عليكم في الدلفي 7 كيف يتم رسم مستطيل و اللون الاحمر شفاف كود : buffer.Canvas.Brush.Color:= clred;
buffer.Canvas.Pen.Color:= clred;
buffer.Canvas.Rectangle(Rect(0,0,100,50));
buffer.Canvas.Brush.Color:= clred;كيف يتم رسم مستطيل شفاف - SMP3 - 14-05-2013 في الحقيقة .. لا يمكن تطبيق الفكرة مباشرة بسبب قصور دوال ال GDI على التعامل مع النظام ARGB (اللون الشفاف ) يمكن عمل ذلك بكل سهولة باستخدام ال GDI+ أو ال FireMonkey ----------------------------------------- لكن على حسب مافهمته فأنت تستخدم دلفي 7 (احتمال أنك لا تملك +GDI ) يمكنك عمل المطلوب باستخدام هذه الدالة : PHP كود : { AlphaRect By SMP3 .PHP كود : AlphaRect(GetWindowDC(Handle),0,0,100,30,clRed,100); كود : http://im34.gulfup.com/bhkCS.pngكيف يتم رسم مستطيل شفاف - Anew - 14-05-2013 احسنت و بارك الله فيك و جعله في ميزان حسناتك لكني واجهت بعض الصعوبات و استعمله استخدم متغير من نوع TBitmap; فكيف استطيع ان اضف هذه العمليه عليه المتغير اسمه buffer مثلا اختصر الكود بلا من هذا GetWindowDC(Handle نكتب هذا buffer الذي هوه متغير من نوع Bitmap وبارك الله فيك كيف يتم رسم مستطيل شفاف - SMP3 - 14-05-2013 Anew كتب :المتغير اسمه buffer PHP كود : AlphaRect(buffer.Canvas.Handle,0,0,100,30,clRed,100); كيف يتم رسم مستطيل شفاف - Anew - 14-05-2013 احسنت عمل معب بصوره صحيحة بارك الله بيك و ليجعله في ميزان حسناتك بخصوص ال(gdi) استخدم دلفي 7 لانه لا يعتمد على الفروم ورك او اي شي اخر فهل نسخ دلفي الحديثه تعتمد على الفروم او اي شي اخر بارك الله فيك كيف يتم رسم مستطيل شفاف - SMP3 - 14-05-2013 تقصد +gdi لا , لا تعتمد على الفرام وورك .. كيف يتم رسم مستطيل شفاف - Najy Ibraheem - 14-05-2013 السلام عليكم... ببساطة لماذا لا تجعل الـ Brush شفافة و ذلك بضبط الخاصية Style على bsClear: كود : buffer.Canvas.Pen.Color:= clRed;
buffer.Canvas.Brush.Style := bsClear; // <<<
buffer.Canvas.Rectangle(0, 0, 100, 50);نرجو الاستفادة و السلام. كيف يتم رسم مستطيل شفاف - SMP3 - 14-05-2013 Najy Ibraheem كتب :ببساطة لماذا لا تجعل الـ Brush شفافة و ذلك بضبط الخاصية Style على bsClear:[COLOR="Red"]الأخ يقصد ال Opacity ألق نظرة على الصورة : [/COLOR] كود : http://im34.gulfup.com/bhkCS.pngكيف يتم رسم مستطيل شفاف - Najy Ibraheem - 14-05-2013 السلام عليكم... يبدو أني أخطأت الفهم! سلام. كيف يتم رسم مستطيل شفاف - Anew - 16-05-2013 SMP3 بارك الله بيك و شكرا على المجهود الطيب najy بارك الله فك |