كيف تجعل برنامجك يستمر في الاستجابة للمستخدم اثناء قيامه في مهمة حسابية معينة!!

29 02 2008

ربما عزيزي المبرمج تساءلت وتساءلت وتساءلت عن كيفية جعل برنامجك يستمر في الاستجابة للمستخدم اثناء قيامه في مهمة حسابية معينة معقدة مثل العاملي، فهل تساءلت عن هذا يوما إن كان جوابك نعم فأعتقد أن المقالة التالية سوف تشرح لك كيفيةعل ذلك بكل سهولة، وإن كان جوابك لا فلا بأس أن تتعلم كيف تستطيع تحقيق ذلك فهذا الأمر من اللأشياء المهمة والمهمة جدا، دعنا نحقق ذلك من خلال المثال السابق.

18.jpg

  أقرأ باقي الموضوع »





تعرف على الأداة TableLayoutPanel.

27 02 2008

ربما تكون مثلي ومررت في حالة تصميم لواجهة تحتوي على العديد من الادوات التي أخذت تؤرقك كيف تصطف في الشكل والاماكن التي تريدها، دعني أخبرك أن حل مشكلتك غاية في السهولة وذلك باستخدام أحد الادوات الرائعة التي تريحك في توضع أدواتك من أزرار و غيرها الكثير، دعنا سوية نزيح الستار عن أداة تشبه الاداة التي يستخدمها أصحاب تصميم المواقع بشكل كبير، تكاد لا تفارق اي موقع إلا ما رحم ربي، إنها الاداة TableLayoutPanel،  ربما أنك سريع البديهة بعد أن قرأت اسم الاداة ربما قد تبادر إلى ذهنك أنها أداة تشبه الجدول، بل هي جدول بحد ذلته إن أن الغاية هي تقسيم الفورم إلى خلايا مكونة من عدد من الأسطر والأعمدة، وبالتالي يمكنك تحديد كل اداة ترغب بإضافتها في الخلية التي تناسبك.

16.jpg

  أقرأ باقي الموضوع »





كيف تستطيع أن ترسم الفورم بشكل هندسي مثل الدائرة أو المثلث أو …!!

26 02 2008

هل خطر ببالك يوما كيف تستطيع ان تجعل شكل الفورم مثلا ذو شكل دائري أو مثلث او الشكل الذي تراه مناسبا، من خلال هذه المقالة سوف نتعرف إلى كيفية عمل شكل الفورم إلى الشكل قطع أو دائرة أو المثلث بشكل بسيط جدا وواضح.

11.jpg

  أقرأ باقي الموضوع »





كيفية إجراء عملية السحب والإفلات Drag And Drop!!

25 02 2008

هل تعلم ان في هذه المقالة سوف نتناول ليس طعاما وانما موضوعا هاما، ألا هو إمكانية السحب والافلات في الادوات، ربما لم تفهم شيئا لذلك دعني أطرح عليك السؤال التالي:

اريد تصميم واجهة تحتوي على قائمة ببعض الاسماء (ربما الاصدقاء أو ما شابه)، وايضا إمكانية كتابة نص ما!! 

06.jpg

 

أقرأ باقي الموضوع »





كيف يمكنك ان تجعل نافذة الفورم تبدو كشكل صورة محددة كخلفية لها؟

25 02 2008

 

هل تساءلت يوما كيف يمكنك ان تجعل نافذة الفورم تبدو كشكل معين، دعنا من خلال هذه المقالة نحدد كيف يمكننا القيم بذلك بكل سهولة

5.jpg

أقرأ باقي الموضوع »





كيف تجعل شريط الادوات حر الحركة من أي جانب من جوانب الفورم؟

24 02 2008

ربما عزيزي القارئ تساءلت يوما، الا استطيع ان اجعل شريط الادوات حر الحركة من أي جانب من جوانب الفورم، كشريط الادوات الموجدود في المحرر Visual Studio. الاجابة ستكون بكل تأكيد يمكنك عمل ذلك بسهولة فائقة، كيف نستطيع!! دعنا نرى ذلك سوية:

أولا قم بإنشاء فورم فارغة.

ثانيا اختر العنصر ToolStripContainer من صندوق الادوات، لتصبح النافذة على الشكل التالي:

 

1.jpg 

 

 

أقرأ باقي الموضوع »





كيف يمكنك معرفة المهام التي تعمل على حاسبك؟

22 02 2008

لنفرض انك تود بانشاء تابع يقوم باعادة اسماء المهام قيد التنفيذ على حاسب ما، فماذا تظن انك فاعل من خلال الدوت نيت دع المثال التالي يوضح لك كيف يمكنك القيام بهذه المهمة السهلة بكل سهولة:

public static string[] GetTasks(string machineName)
{
    string[] tasks;
    Process[] p;

   
p = Process.GetProcesses(machineName);
    tasks = new string[p.Length];
 
    for (int i = 0; i < p.Length; i++)
    {
        tasks[i] = p[i].ProcessName;
    }
 
    return tasks;
}

فما رؤيك!!، دعنا نوضح قليلا ماذا فعلنا من خلال الدوت نيت، لقد استخدمنا التابع GetProcess التابع للصف Process، حيث مهمة هذا التايع ان يعيد لك مصفوفة من نوع Process بالمهام قيد التنفيذ على الحاسب المختار من خلال اسمه.أما من اجل الحصول على عدد المهام قيد التنفيذ استخدمت الخاصة p.Length والتي تحدد عد ابعاد الشعاع p والذي فعليا يمثل عدد المهام.وبقي امر اخير من اجل الحصول على اسمالهمة فيمكننا استخدام الخاصة ProcessName التي تعيد اسم المهمة المحددة من خلال المتحول i
وهناك العديد من الخصائص والتوابع التي يقدمها لك الصف
Process، فمثلا هناك التابع Kill() الذي يقوم بإنهاء تنفيذ المهمة وغيرها الكثير، سأدع لك عملية اكتشاف ذلك لكي تستمتع بنفسك.بقي امر واحد وهو كيفية استخدام هذا التابع، ويكون ذلك بأحد السطريين التاليين:

string[] t1 = GetTasks(تضع هنا اسم جهازك);
string[] t2 = GetTasks(“.”);

السطر الأول واضح جدا، السطر الثاني وضعنا “.” أي اننا نقصد الجهاز الذي يتم تنفيذ هذه المهام عليه.

————————————————





كيف يمكنك معرفة رقم السطر الذي رمى الإستثناء exception؟؟

22 02 2008

في تطبيق تقوم ببنائه كيف يمكنك معرفة رقم السطر الذي يتم فيه حدوث استثناء exception؟؟ مثلا:

try
{
    // كودك البرمجي
}
catch (Exception ex) {}

يمكنك ذلك بكل سهولة باستخدام الخاصة StackTrace التابعة للكائن ex المشتق من الصف Exception، فتصبح الشيفرة

 try
{
    // كودك البرمجي
}
catch (Exception ex)
{
    Console.WriteLine(ex.StackTrace);
}
 

طبعا للكائن ex العديد من الخصائص منها: Message و  Source و TargetSite وغيرها الكثير.
فمثلا
Message: تعطيك فحوى رسالة الخطأ، اي ما هو سبب وقوع الخطأ
TargetSite: اسم التابع الذي حدث فيه الاستثناء.