Posts

Showing posts from May, 2015

Check if bitmap pixel data contains alpha information.

While reading this topic Image.GetFlags method   (the topic was written in C language) , I came with  a solution to check if the bitmap or image pixel data contains alpha information, In Dot Net to gets flags that indicate certain attributes of an Image , simply check the value of Flags property which will return a bitwise combination of ImageFlags. The following Function shows how to check bitmap alpha information. Code:     Public Shared Function IsHasAlpha(bmp As Bitmap) As Boolean         Return bmp IsNot Nothing AndAlso (bmp.Flags And Imaging.ImageFlags.HasAlpha) > Imaging.ImageFlags.None     End Function Usage: 1 - Define a bitmap. 2 - Pass the bitmap value to the above function, and if the image has alpha information the function  shall returned True      If IsHasAlpha(bmp) Then     ' Do something   End If References: GetFlags Method Image Flags Property ImageFlags Enumeration

Recursively find all controls on a Form إيجاد جميع الكونترول الموجودة في الفورم

السلام عليكم و رحمة الله وبركاته مقدمة : أحد اهم الاسئلة الشائعة في النت هو كيف أمسح جميع التكست الموجود في مجموعة من التكست بوكس كونترول الموجودة علي الفورم؟ بالتأكيد جيمع الاجابات التي سوف تجدها علي النت هي إجابات صحيحية و مناسبة لكن يتبقي السؤال ماذا لو كان هذا التكست بوكس ليس موجودا بشكل مباشر علي الفورم نفسه بل موجودا داخل كونترول أخر مثل   Panel   أو مثل GroupBox أو مثل TabControl ؟ الإجابة علي مثل هذا السؤال تنحصر في كلمة واحدة و هي Recursion وهنا قد يتبارد الي ذهن البعض ما هو تعريف هذا الشئ الذي نطلق عليه Recursion ؟ تعريف     Recursion هو أن تقوم الدالة Function او الروتين Sub او الطريقة Method   بإستدعاء نفسها من داخل نفسها وهذا يعني أننا هنا نقوم بعمل Looping بدون استخدام جمل برمجية مثل For .... Next او   For .... Each أي أن Recursion    وببساطة شديدة هو شئ عكس كلمة   Iteration أو بشكل أكثر دقة فإن   Recursion هو عبارة عن محاولة إيجاد حل لمشكلة رئيسية Main Problem و ايضا إيجاد حلول لجميع المشاكل الفرعية Minor Problem s