نمایش نتایج 1 تا 5 از 5

نام تاپیک: راست چین کردن منو ها

  1. #1
    کاربر دائمی آواتار sajjad_kochekian
    تاریخ عضویت
    اسفند 1384
    محل زندگی
    اصفهان نصف جهان
    پست
    581

    Question راست چین کردن منو ها

    با سلام
    داخل منوی فارسی دارم که با دستور ساخته ام
    حالا می خواهم اون را راست چین کنم.
    دستور اون را از سایت ماکروسافت بدست اوردم ولی چون که نام منو را می خواهد و منو را با دستور می سازم نمی دونم باید چی کارش کنم.
    ساخت منو
        Dim strMenuName As String
    Dim cmdNewMenu As CommandBar

    strMenuName = "ExampleMenu"

    If fIsCreated(strMenuName) Then
    Application.CommandBars(strMenuName).Delete
    End If


    'Create a new Commandbar as MenuType


    Set cmdNewMenu = Application.CommandBars.Add(strMenuName, msoBarTop, True, True)

    ماژول راست چین ماکرو سافت
    Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
    Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
    Public Declare Function InvalidateRect Lib "user32" (ByVal hwnd As Long, lpRect As Long, ByVal bErase As Long) As Long
    Public Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
    Declare Function GetWindow Lib "user32" (ByVal hwnd As Long, ByVal wCmd As Long) As Long
    Public Const GW_CHILD = 5
    Public Const WS_EX_LAYOUTRTL = &H400000
    Public Const GWL_EXSTYLE = (-20)


    دستور استفاده
        'For ToolBar
    'mhwnd = GetWindow(Toolbar1.hwnd, GW_CHILD)
    'OldLong = GetWindowLong(mhwnd, GWL_EXSTYLE)
    'SetWindowLong mhwnd, GWL_EXSTYLE, OldLong Or WS_EX_LAYOUTRTL
    'InvalidateRect hwnd, 0, False

    لطفا دوستان که می تونند کمک کنند

  2. #2
    مدیر بخش آواتار Abbas Amiri
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    اصفهان
    پست
    2,327

    نقل قول: راست چین کردن منو ها

    تابع fIsCreated را باید اضافه کرد ولی موضع اینه که CommandBar خصوصیت hWnd نداره. آدرس لینک روبده تا سری بزنیم.


    Function fIsCreated(strMenuName) As Boolean

    Dim intNumberMenus As Integer
    Dim i As Integer

    intNumberMenus = Application.CommandBars.Count

    fIsCreated = False

    For i = 1 To intNumberMenus
    If Application.CommandBars(i).Name = strMenuName Then
    fIsCreated = True
    i = intNumberMenus
    End If
    Next

    End Function


  3. #3
    کاربر دائمی آواتار sajjad_kochekian
    تاریخ عضویت
    اسفند 1384
    محل زندگی
    اصفهان نصف جهان
    پست
    581

    نقل قول: راست چین کردن منو ها


  4. #4
    کاربر دائمی آواتار sajjad_kochekian
    تاریخ عضویت
    اسفند 1384
    محل زندگی
    اصفهان نصف جهان
    پست
    581

    نقل قول: راست چین کردن منو ها

    از اين فانكشن اسفاده شده است.
    لينك منبع را ارسال كردم

    لطفا راهنمايي كنيد.

  5. #5
    کاربر دائمی آواتار sajjad_kochekian
    تاریخ عضویت
    اسفند 1384
    محل زندگی
    اصفهان نصف جهان
    پست
    581

    نقل قول: راست چین کردن منو ها

    کسی نیست راهنمایی کنه؟

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •