Monthly Archives: فبراير 2008

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

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

18.jpg

  إقرأ المزيد

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

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

16.jpg

  إقرأ المزيد

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

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

11.jpg

  إقرأ المزيد

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

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

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

06.jpg

 

إقرأ المزيد

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

 

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

5.jpg

إقرأ المزيد

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

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

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

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

 

1.jpg 

 

 

إقرأ المزيد

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

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

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؟؟

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

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

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

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

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

%d مدونون معجبون بهذه: