| الموضوع السابق | الموضوع التالي |
الغرض
تعريب واجهات نوافذ الحوار الشائعة، و الممثلة في دلفي بالمكونات: TOpenDialog (فتح) و TSaveDialog (حفظ باسم) و TPrintDialog (طباعة) و TFontDialog (خطوط) و TColorDialog (ألوان).
الصيغة
procedure ShowArabicOpenDlg(DlgHandle: HWND; DlgTitle: string = '');
procedure ShowArabicSaveDlg(DlgHandle: HWND; DlgTitle: string = '');
procedure ShowArabicPrintDlg(DlgHandle: HWND; DlgTitle: string = '');
procedure ShowArabicFontDlg(DlgHandle: HWND; DlgTitle: string = '');
procedure ShowArabicColorDlg(DlgHandle: HWND; DlgTitle: string = '');
الوسائط (Parameters)
| DlgHandle | مقبض (Handle) نافذة الحوار. استعمل الخاصية Handle لمكون نافذة الحوار، مثلاً: OpenDialog1.Handle. | |
| DlgTitle | بارامتر اختياري يحدد عنوان نافذة الحوار. |
الشرح
من الملاحظ أن نوافذ الحوار المشتركة (Common Dialogs) في دلفي غير معربة و لا تمتلك خصائص لتعريبها، بمعنى أن نصوص مكونات تلك النوافذ تظهر دائماً باللغة الإنجليزية، مثل Open و Cancel و Save in، ... إلخ.
يمكنك الآن استعمال هذه الإجراءات لتعريب واجهات تلك النوافذ و ذلك باستدعاء الإجراء المناسب في معالج الحدث OnShow لمكون نافذة الحوار كالتالي:
| مكون نافذة الحوار | الإجراء المستدعى في معالج الحدث OnShow |
|---|---|
| TOpenDialog | ShowArabicOpenDlg |
| TSaveDialog | ShowArabicSaveDlg |
| TPrintDialog | ShowArabicPrintDlg |
| TFontDialog | ShowArabicFontDlg |
| TColorDialog | ShowArabicColorDlg |
فمثلاً إذا كان لدينا مكون نافذة حوار "فتح ملف" باسم OpenDialog1 في النموذج Form1 فإن الشفرة ستكون كالتالي:
procedure TForm1.OpenDialog1Show(Sender: TObject);
begin
ShowArabicOpenDlg(OpenDialog1.Handle, 'فتح ملف');
end;
لاحظ أن البارامتر الثاني (DlgTitle) لكل إجراء هو بارامتر اختياري، أي يمكن إهماله عند الاستدعاء. في حالة إهماله أو كانت قيمته نصاً فارغاً (Empty String) فإن كل إجراء من الإجراءات الخمسة تلك يعطي لنافذة الحوار عنواناً افتراضياً كالتالي:
| الإجراء | العنوان الافتراضي لنافذة الحوار |
|---|---|
| ShowArabicOpenDlg | فتح |
| ShowArabicSaveDlg | حفظ باسم |
| ShowArabicPrintDlg | طباعة |
| ShowArabicFontDlg | خطوط |
| ShowArabicColorDlg | ألوان |
ملاحظة:
لم نقم بتصميم إجراء واحد لكل نوافذ الحوار المشتركة بسبب مسألة فنية في تصميم نوافذ الحوار المشتركة في النظام Windows، حيث أن معرفات المكونات (Control IDs) تختلف من نافذة حوار إلى أخرى إلا في مكونات قليلة.
أعلى الصفحة
| الموضوع السابق | الموضوع التالي |