الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كود بسيط جداً يجعل شكل الفورم دائري تفضل وخذه

مغلق
بدأه زائر في 18 يوليو 2002 · 2 رد · 476 مشاهدة · في ارشيف قسم C/C++
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

لقد كشفت بفضل الله طريقة تجعل الفورم في فيجوال سي++ دائرياً ويمكنك تغيير لونه ووضع الأزرار والأودوات على الفورم كالفورم العادي ولكن شكل الفورم لايظهر الا وقت التنفيذ .

اليك الطريقة:

1_ قم بإنشاء برنامج تنفيذي واختر نوع التطبيق BaseDialog ثم قم بالضغط على زر Finish واترك باقي خطوات المعالج كما هي .

يظهر امامك الفورم العادي لفيجوال سي++ قم بالضغط عليه بالزر الأيمن للفأرة واختر Class Wizerd ثم قم باختيار التبويب MessageMap من قائمة Message اختر الحدث WM_INITDIALOG ثم انقر زر Edit Code

ثم اكتب الكود التالي في أول الدالة بعد قوس الفتح مباشرة:

CDC* pDC = GetDC();
	CRect rect;
	GetClientRect(&rect);
	CRgn Rgn;
	Rgn.CreateEllipticRgnIndirect (&rect);
	SetWindowRgn(Rgn,TRUE);

شغل ونفذ التطبيق سترى ان شكر الفورم اصبح دائرياً فعلاً واذا أردت تغيير لون الفورم فهنالك كود بسيط جداً ايضاً وهو كالتالي:

اغلق الفورم بالضغط على زر Esc في لوحة المفاتيح.

اضغط بالزر الأيمن للفأرة على الفورم واختر Class Wizerd ثم قم باختيار التبويب MessgeMap ثم اختر من قائمة Message اختر الحدث

WM_PAINT ثم اكتب في بداية الدالة بعد قوس الفتح مباشرة الكود التالي وذلك لتغيير لون النافذة وهاهو الكود:

CDC* pDC = GetDC();
	CRect rect;
	GetClientRect(&rect);
	CBrush br(RGB(255,77,0));
   	pDC->FillRect (&rect,&br);

شغل البرنامج سترى ان لون النافذة اصبح برتقالياً وهذه هي الطريقة سهلة أليس كذالك؟

ويمكنك وضع اللون الذي يناسبك للنافذة وهو عن طريق تغيير

RGB(255,77,0);  تحدد اللون للنافذة غير في الأرقام فقط

فمثلاً لو وضعت :

RGB(0,0,255) يصبح اللون ازرق( لون النافذة)

اخواني هذا مالدي فإن اخطأت فمن نفسي والشيطان وان اصبت فمن الله سبحانه وتعالى

ملاحظة :

اذا لم يتم تنفيذ الكود غير نمط البناء من Debug إلى Release

اخواني أنا في إنتظار الرد منكم على هذه الطريقة وشكراً لكم

اخوكم Eidx00

#2

الف شكر أخي على هذه الابداعات.. والى الامام

#3

بسم الله الرحمن الرحيم

السلام عليكم ورحمة الله وبركاته وبعد

اخي لقد اعطيتني اكبر من حقي وشجعتني بكلماتك الجميلة وسأعدك أني كلما وجدت طريقة جديدة سأطرحها ولكن بعد تبسيطها بالطبع

مع العلم أن هذه الطريقة كانت طويلة جداً فحاولت تبسيطها قدر الأمكان وأرجوا أن أكون قد أفدتك ولو بالقليل وشكراً

أخوك Eidx00

هذا الموضوع مغلق.

مواضيع مشابهة