عندي كم سؤال وأرجو أن في واحد فيكم يقدر يحلهم
أقوم بتصميم نافذة Form، وكنت أريد أن أزيل شريط العنوان (الذي يحتوي على اسم النافذة)، فقمت بتغيير خاصية FormBorderStyle إلى None، لكن للأسف عند اختيار هذه الخاصية لم أستطع تغيير حجم النافذة بالطريقة العادية، وهي أن أحرك مؤشر الفأرة إلى حواف النافذة. حاولت أن أبحث عن خاصية تساعدني لإعادة القدرة على تغيير حجم النافذة لكن دون فائدة، حتى أنني بحثت في دليل .NET Framework SDK.
فكرت أن أغير الحجم عن طريق استخدام الحدث MouseMove للنافذة لكني لم أجد الطريقة المناسبة، فأرجو منكم مساعدتي، رغم بساطة المشكلة لكنها عقدتني!!!!
بالنسبة للسؤال الثاني، حاولت أن أجد طريقة لتغيير طريقة عرض الخط باستخدام الشيفرة إلى خط عريض ومائل، لكن الخاصية FontStyle لا تتضمن مزج الخاصيتين معاً فما الحل؟
وكان عندي مشكلة أخرى هي تغيير مكان النافذة عن طريق سحب النافذة لكني حليتها بطريقة الأحداث MouseMove,MouseDown & MouseUp، .
أعرف أنكم تستطيعون كتابة هذه الشيفرة بكل سهولة، ولكني أضعها هنا لمن يريدها:
//أولاً نقوم بالإعلان عن المتغيرات التي سوف تحفظ مكان النقر
int formX,formY;
//الآن عند حدوث الضغط على الفأرة يتم تخزين مكان النقرة ثم يتم تشغيل الحدث الخاص بتحرك الفأرة
void MainFormMouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
formX = e.X;
formY = e.Y;
this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.MainFormMouseMove);
}
//الآن عند تحرك الفأرة يتم تغيير موقع النافذة بواسطة هذه المعادلة
void MainFormMouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
{
this.Location = new Point(this.Location.X+(e.X-formX),this.Location.Y +(e.Y-formY));
}
//الآن يتم إغلاق الحدث الخاص بتحرك الفأرة عند التوقف عن ضغط الفأرة
void MainFormMouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
{
this.MouseMove -= new System.Windows.Forms.MouseEventHandler(this.MainFormMouseMove);
}
وأخيراً أريد أسأل، هل كل المبرمجي على سي شارب لديهم برنامج فيجوال ستديو أو فيجوال سي شارب؟ صراحة أنا كنت أريد أن أشتري نسخة ولكن سعرها غالي جداً، أما بالنسبة للبرامج المنسوخة(المقرصنة) ؛ عندنا في دولة الإمارات هذه البرامج غير موجودة بسبب تشديد الإمارات على منع هذه النسخ، فحاولت أن أنزل النسخة التجريبية (Beta) من موقع مايكروسوفت التي تعمل لمدة 60 يوماً لكن تنزيل مثل هذه البرامج يأخذ الكثير من الوقت(أكثر مما تتصوروا)، حالياً أستخدم برنامج شارب ديفيلوبرSharpDeveloper (مجاني ويمكن تنزيله من موقعwww.icsharpcode.net)، وهو برنامج جيد يمكن استخدام سي شارب وVB.Net و Managed C++7، لكنه يبقى برنامجاً ضعيفاً، فكيف أحصل على نسخة من البرنامج حتى ولو كانت تجريبية؟ خصوصاً أنني أريد أن أقدم في امتحانات MCSA.
شكراً لكم وأسف على الإطالة
