masaioki.ono
شنبه 23 اسفند 1393, 21:43 عصر
من میخوام که موقعی که مسیج باکس نشون داده میشه yes no ok  و .. که میان به فارسی بشن . چه کار باید بکنم . کسی نمونه کدش رو داره
gorg313
یک شنبه 24 اسفند 1393, 19:54 عصر
سلام يه سرچ ميزدي بهتر بودا
Option Explicit
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 Declare Function GetCurrentThreadId Lib "kernel32" () 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 GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
  
Public Sub MessageBoxH(hwndThreadOwner As Long)
  
    Dim hInstance As Long
    Dim hThreadId As Long
  
    hInstance = GetWindowLong(hwndThreadOwner, GWL_HINSTANCE)
    hThreadId = GetCurrentThreadId()
  
  m_hHook = SetWindowsHookEx(WH_CBT, AddressOf MsgBoxHookProc, hInstance, hThreadId)
  
End Sub
  
Private Function MsgBoxHookProc(ByVal uMsg As Long, 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
    MsgBoxHookProc = False
  
End Function
  
Public Function MsgFox(Window As Form, Prompt As String, Optional msgStyle As VbMsgBoxStyle, Optional Title As String) As Long
        MessageBoxH Window.hwnd
        If IsMissing(msgStyle) Then msgStyle = vbOKOnly
       If IsMissing(Title) Then Title = Window.Caption
    MsgFox = MsgBox(Prompt, msgStyle + vbMsgBoxRtlReading + vbMsgBoxRight, Title)
End Function
لينک مطلب : http://barnamenevis.org/showthread.php?174656-%DA%A9%D8%AF-%D9%85%D8%B3%D8%AC-%D8%A8%D8%A7%DA%A9%D8%B3-%D9%81%D8%A7%D8%B1%D8%B3%DB%8C
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.