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

كيف أقوم بتعريب المسج بوكس

مغلق
بدأه akram_awad في 13 فبراير 2008 · 2 رد · 631 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الأخوة الأعزاء ..

كنت أستخدم Module في فيجوال بيسك 6.0 لتعريب أزرار المسج بوكس

و الآن و هاأنا أقوم بعمل أول مشروع باستخدام فيجوال ستوديو 2005 واجهت مشكلة لعرض أزارير المسج بوكس بالعربي يعني :

يعني أوافق = OK

نعم = Yes

لا = No

إلخ

هل ممكن ندرج المتغيرات العربية في الــ Resource File

بدلاً عن كتبة الكود الطويل الآتي في الــModule

Module Module1
	'
	Private m_hHook As Long
	Private Const IDOK = 1
	Private Const IDCANCEL = 2
	Private Const IDABORT = 3
	Private Const IDRETRY = 4
	Private Const IDIGNORE = 5
	Private Const IDYES = 6
	Private Const IDNo = 7
	'
	Private Const WH_CBT = 5
	Private Const GWL_HINSTANCE = (-6)
	Private Const HCBT_ACTIVATE = 5
	'
	Private Const WS_EX_LAYOUTRTL = &H400000
	Private Const GWL_EXSTYLE = (-20)
	'
	Private Declare Function GetCurrentThreadId Lib "kernel32" () As Long
	Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
							 (ByVal hwnd As Long, ByVal nIndex As Long) As Long
	Private Declare Function SetDlgItemText Lib "user32" Alias "SetDlgItemTextA" _
							 (ByVal hDlg As Long, ByVal nIDDlgItem As Long, _
												  ByVal lpString As String) As Long
	Private Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" _
							(ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, _
												   ByVal dwThreadId As Long) As Long
	Private Declare Function UnhookWindowsHookEx Lib "user32" _
							 (ByVal hHook As Long) As Long
	'
	Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
							 (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
	'
	Public Sub MessageBoxH(ByVal hwndThreadOwner As Long)
		'
		Dim hInstance As Long
		Dim hThreadId As Long
		'
		hInstance = GetWindowLong(hwndThreadOwner, GWL_HINSTANCE)
		hThreadId = GetCurrentThreadId()
		'
		'm_hHook = SetWindowsHookEx(WH_CBT, AddressOf MsgBoxHookPro, hInstance, hThreadId)
		'
	End Sub
	'
	Private Function MsgBoxHookPro(ByVal uMsg As String, ByVal wParam As Long, _
														ByVal lParam As Long) As Long

		If uMsg = HCBT_ACTIVATE Then
			'
			SetDlgItemText(wParam, IDOK, "موافق")
			SetDlgItemText(wParam, IDCANCEL, "إلغاء الأمر")
			SetDlgItemText(wParam, IDABORT, "إحباط")
			SetDlgItemText(wParam, IDRETRY, "إعادة المحاولة")
			SetDlgItemText(wParam, IDIGNORE, "تجاهل")
			SetDlgItemText(wParam, IDYES, "نعم")
			SetDlgItemText(wParam, IDNo, "لا")
			'
			UnhookWindowsHookEx(m_hHook)
			'
		End If
		'
		MsgBoxHookPro = False
	End Function
	'
	Sub OffMsg()
		'
		UnhookWindowsHookEx(m_hHook)
	End Sub

الغريب في الكود السابق أنه لا يستطيع فهم AddressOf الموضحة و تحتها خط فوق

#2

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

لم أفهم ماتريد بالضبط أخي

هل تريد جعل أزرار المسج بوكس بالعربي

أم تريد استخدام أكواد VB6 في الدوت نت

إذا كانت الأولى فأذكر فيه برنامج في هذا القسم يقوم بتغيير الكلمه في زر المسج بأي كلمه تريدها يمكنك البحث عنه

أما إذا كانت الثانيه فكل ماعليك هو وضع هذا السطر

Imports microsoft.VisualBasic

في أعلى الكود لديك واكتب أكواد الـ VB6 التي لديك

ان شاء الله اكون فهمت قصدك

#3

ملاحظة:

قبل استخدام أي كود VB6 من داخل أي اصدار .net يجب ترقيته باستخدام معالج الترقية

تم تعديل هذه المشاركة بواسطة محمد سامر أبو سلو في 16 فبراير 2008 في 12:18

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…