أخواني ممكن تشرحوا لي كيف أستطيع التعامل مع الدايلوق في Win 32 Applction
بفتحه أو بتخصيص الدوال الأوامر للأزرار؟
أخواني ممكن تشرحوا لي كيف أستطيع التعامل مع الدايلوق في Win 32 Applction
بفتحه أو بتخصيص الدوال الأوامر للأزرار؟
شوف أخي الكريم :
ال Dialog أو نافذة الحوار تبنى لها دالة تحكم
تكون هذة الدالة بهذا الشكل
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
return 0;
}إسم الدالة WndProc وأسما البارمترات تستطيع تغييرها إلى أي إسم
أهم شيء أنك لا تغير في ترتيب البارمترات وأنواعها
بعد ذلك تظهر النافذة بإستخدام الدالة وبهذة الطريقة
DialogBox(hInst, (LPCTSTR)IDD_ABOUTBOX,hWnd, (DLGPROC)WndProc);
لاحظ البارمترات : hInst مقبض البرنامج
IDD_ABOUTBOX إسم النافذة في ملف المصادر
hWnd مقبض النافذة التي الرئيسية للبرنامج (أو النافذة التي إستدعت النافذة الجديدة)
وآخر بارمتر WndProc هي دالة التحكم لنافذة الحوار
لو جربت هذا الطريقة السابقة .. ستظهر نافذة لا تستجيب لأي شيء لأنك لم تعالج أي رسالة للنافذة الجديدة
لاحظ كيف سنعالج زر أمر وليكن إسمة CMD_ABC
تذهب لدالة التحكم في النافذة وتكتب كود ليتحقق ويعرف ماهي الرسالة المرسلة للنافذة
بارمتر رسائل النافذة هو message
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_INITDIALOG:
return TRUE;
case WM_COMMAND:
if (LOWORD(wParam) == CMD_ABC)
{
MessageBox (NULL,"CMD_ABC",NULL,MB_OK);
return TRUE;
}
break;
}
return FALSE;
}نوع الرسالة أمر وهو WM_COMMAND وأضفنا تحتة كود يعالج زر الأمر
وهكذا مع كل رسائل النافذة
.
*************************************************
مجموعة مواضيع - إحتراف البرمجة -
ّ~~~~~~~~~~~~~~~~~~~~~~
البرمجة المتقدمة & الهندسة العكسية & برمجة وأمن الأنظمة
آخر المواضيع :
أنظمة اليونكس(Solaris,HP, AIX,SCO)وانواع المعالجات
ثغرة SMS لأجهزة الجوال Siemens 3568i !
أخطاء وثغرات البرامج العربية !!!
سلسلة مواضيع - أمن وحماية مواقع الويب -
E البرمجة المتقدمة X للملفات التنفيذية E
سلسلة مواضيع ثغرات الأنظمة وإختراق الأجهزة
**************************************************
<span style='font-size:14pt;line-height:100%'>الإرادة تحـــقق السيـــادة</span>
**************************************************
خذ الكتاب لبرمجة الوندوز بال API سيريحك كثيرا باذن الله ,, وحجمه كبير قليلا 4 ميجابايت ,,
في الكتاب كل ماتريد بدأ بالنوافذ والتحكمات وحتى تعدد التشعبات threads ,,
هذا الموضوع مغلق.