كيفية تعطيل معالجة الحوار MFC ضغط افتراضي

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

اضغط هنا لرابط المقالة باللغة الانجليزية122489
تمت أرشفة هذه المقالة. وتظهر "كما هي" ولن يتم تحديثها بعد الآن.
الموجز
تعتمد مربعات الحوار Windows استخدام الزر الافتراضي (pushbutton) تنشيط تلقائياً عند الضغط على المفتاح ENTER بينما لا يكون التركيز على زر أمر. تلقائياً سوف مكتبة الفئة MFC من استدعاء دالة الظاهري CDialog::OnOK() للحصول على مربع حوار عندما يتم تنشيط الزر الافتراضي (pushbutton) عن طريق ضغط المفتاح ENTER.

يتوافق مع هذا السلوك إلى إرشادات تعيين ما بواسطة "واجهة Windows: دليل تصميم تطبيق." يتم تضمين مع وثائق SDK الإصدار 3.1 Windows هذا الدليل. كما تتوفر أيضاً من Microsoft Press.
معلومات أخرى
على الرغم من دعم الزر (pushbutton) الافتراضية مستحسن، قد تحتاج إلى تعطيل أو تعديل تطبيق القياسية في بعض الحالات. يمكنك القيام بذلك في تطبيق MFC باتباع الخطوات التالية:

  1. تحميل مربع الحوار إلى Studio التطبيق وقم بتغيير معرف الزر موافق من IDOK إلى شئ آخر مثل IDC_MYOK. أيضاً، قم بإلغاء تحديد التحقق من خاصية "زر افتراضي".
  2. استخدام ClassWizard لإنشاء رسالة معالجة الدالة لهذا الزر المسمى OnClickedMyOK. تنفيذ هذه الوظيفة عند تلقي رسالة BN_CLICKED من هذا الزر.
  3. في التعليمة البرمجية الخاصة OnClickedMyOK استدعاء الدالة OnOK إصدار الفئة الأساسية. وفيما يلي مثال:
       void CMyDialog::OnClickedMyOK()   {      CDialog::OnOK();   }						
  4. تجاوز OnOK لمربع حوار الخاص بك ثم لا تقم بأي شئ داخل الدالة. وفيما يلي مثال:
       void CMyDialog::OnOK()   {   }						
  5. تشغيل البرنامج ثم إظهار مربع حوار. إعطاء التركيز إلى عنصر تحكم آخر غير الزر "موافق". اضغط على المفتاح RETURN. لاحظ عدم تنفيذ CDialog::OnOK().
تعطيل هذه التقنية دعم الزر (pushbutton) الافتراضية القياسية في برنامج MFC بشكل فعال. سيتم متابعة الزر "موافق" التصرف كما قبل عند تنشيط بواسطة الماوس أو من خلال ضغط مفاتيح mnemonic ولكن سيتم لا بتشغيل معالجة OnOK على المفتاح ENTER.

يمكن استخدام هذه التقنية لتعطيل أو تعديل معالجة OnCancel الافتراضي. بإنشاء مفتاح الهروب استدعاء CDialog::OnCancel تماماً كما استدعاء دالة OnOK بإنشاء مفتاح الإدخال.
kbinf 1.00 1.50 2.00 2.10 2.50 3.00 4.00

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 122489 - آخر مراجعة: 12/04/2015 10:41:43 - المراجعة: 3.1

Microsoft Foundation Class Library 4.2

  • kbnosurvey kbarchive kbmt KB122489 KbMtar
تعليقات