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

نام تاپیک: ایجاد راست کلیک در Access

  1. #1
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    Thumbs up ایجاد راست کلیک در Access

    برای این کار باید اول Microsoft Office xx Object Library رو اضافه کنید ( البته xx ورژن آفیسه مثال 15.0 )

    یک Model در برنامه ایجاد و این کد ها را درون آن قرار دهید البته برای شخصی سازی هم یکم وقت بزارید



    Option Explicit

    Public Const Mname As String = "MyPopUpMenu"


    Sub DeletePopUpMenu()
    ' Delete the popup menu if it already exists.
    On Error Resume Next
    Application.CommandBars(Mname).Delete
    On Error GoTo 0
    End Sub


    Sub CreateDisplayPopUpMenu()
    ' Delete any existing popup menu.
    Call DeletePopUpMenu


    ' Create the popup menu.
    Call ADD_PopUpMenu


    ' Display the popup menu.
    On Error Resume Next
    Application.CommandBars(Mname).ShowPopup
    On Error GoTo 0
    End Sub






    Sub ADD_PopUpMenu()
    Dim MenuItem
    ' Add the popup menu.
    With Application.CommandBars.Add(Name:=Mname, Position:=msoBarPopup, _
    MenuBar:=False, Temporary:=True)


    ' First, add two buttons to the menu.
    With .Controls.Add(Type:=msoControlButton)
    .Caption = "Button 1"
    .FaceID = 59
    .OnAction = "TestMacro"
    End With


    With .Controls.Add(Type:=msoControlButton)
    .Caption = "Button 2"
    .FaceID = 72
    .OnAction = "TestMacro"
    End With


    ' Next, add a menu that contains two buttons.
    Set MenuItem = .Controls.Add(Type:=msoControlPopup)
    With MenuItem
    .Caption = "My Special Menu"


    With .Controls.Add(Type:=msoControlButton)
    .Caption = "Button 1 in menu"
    .FaceID = 71
    .OnAction = "TestMacro"
    End With


    With .Controls.Add(Type:=msoControlButton)
    .Caption = "Button 2 in menu"
    .FaceID = 72
    .OnAction = "TestMacro"
    End With
    End With


    ' Finally, add a single button.
    With .Controls.Add(Type:=msoControlButton)
    .Caption = "Button 3"
    .FaceID = 73
    .OnAction = "TestMacro"
    End With


    End With
    End Sub


    Sub TestMacro()
    MsgBox "AbbasSediqi Say Hello"
    End Sub




    مثال برای فراخوانی

    Private Sub Text2_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) 
    If Button = 2 Then
    CreateDisplayPopUpMenu
    End If
    End Sub




    نمونه فایل هم قرار دادم

    یا حق
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله AbbasSediqi : جمعه 15 مرداد 1395 در 15:03 عصر

  2. #2
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: ایجاد راست کلیک در Access

    البته فراموش نکنید که در تنظیمات database تیک Alow Default Shortcut Menus رو بردارید

    1.jpg

    2.jpg

    Untitled.jpg
    آخرین ویرایش به وسیله AbbasSediqi : جمعه 15 مرداد 1395 در 15:14 عصر

  3. #3
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: ایجاد راست کلیک در Access

    این هم حالت داینامیک برای اشخاص خاص که در منو های مختلف popup های مختلفی لازمشون میشه

    از این Model استفاده کنن


    Option Explicit


    Public Const Mname As String = "MyPopUpMenu"


    Sub DeletePopUpMenu()
    ' Delete the popup menu if it already exists.
    On Error Resume Next
    Application.CommandBars(Mname).Delete
    Application.CommandBars.Add Name:=Mname, Position:=msoBarPopup, _
    MenuBar:=False, Temporary:=True
    On Error GoTo 0
    End Sub


    Sub CreateDisplayPopUpMenu()
    ' Delete any existing popup menu.



    ' Create the popup menu.
    'Call ADD_PopUpMenu


    ' Display the popup menu.
    On Error Resume Next
    Application.CommandBars(Mname).ShowPopup
    On Error GoTo 0
    End Sub


    Sub ADD_PopUpMenu(iCaption As String, iFaceID As Integer, OnActionMacroName As String)


    ' Add the popup menu.
    With Application.CommandBars(Mname)


    ' First, add two buttons to the menu.
    With .Controls.Add(Type:=msoControlButton)
    .Caption = iCaption
    .FaceID = iFaceID
    .OnAction = OnActionMacroName
    End With
    End With
    End Sub


    Sub TestMacro()
    MsgBox "AbbasSediqi Say Hello"
    End Sub






    مثال برای فراخوانی


    Private Sub Text2_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = 2 Then
    Call DeletePopUpMenu
    ADD_PopUpMenu "AbbasSediqi Say", 59, "TestMacro"
    ADD_PopUpMenu "Say Wath ?", 59, "TestMacro"
    CreateDisplayPopUpMenu
    End If
    End Sub




    نمونه فایل هم قرار دادم

    انتقاد پیشنهاد فراموش نشه

    یا حق
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله AbbasSediqi : جمعه 15 مرداد 1395 در 15:15 عصر

  4. #4
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: ایجاد راست کلیک در Access

    برای افزون از رفرنس Microsoft Office xx Object Library

    1.jpg

    2.jpg

    Untitled.jpg



    در صورت پیدا نکردن رفرنس مسیر
    Microsoft Office xx Object Library


    برای آفیس های 32 بیتی در ویندوز های 32 بیتی ( البته اگر آفیس در Programs File نصب شده باشه ) ( مثال آفیس 2013)

    C:\Program Files\Common Files\Microsoft Shared\OFFICE15\MSO.DLL


    برای آفیس های 32 بیتی در ویندوز های 64 بیتی

    C:\Program Files (x86)\Common Files\Microsoft Shared\OFFICE15\MSO.DLL


    برای آفیس های 64 بیتی در ویندوز های 64 بیتی

    C:\Program Files\Common Files\Microsoft Shared\OFFICE15\MSO.DLL









  5. #5
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: ایجاد راست کلیک در Access

    این هم لیست آیکون ها در آفیس البته برای 2007

    یا به اصلاح faceID

    http://www.microsoft.com/en-us/downl...s.aspx?id=3582

  6. #6
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: ایجاد راست کلیک در Access

    این هم پلاگین اکس که همه FaceId رو نشونتون میده


    بعد از دوبار کلیک کردن روی این Addins در تب Addins برنامه FaceIdViewer رو میبینید
    فایل های ضمیمه فایل های ضمیمه

  7. #7

    نقل قول: ایجاد راست کلیک در Access

    سلام
    برنامه خوبی دست شما درد نکنه
    فقط یه سئوال؟
    این کد تو فرم به خوبی جواب میده اما برای استفاده در گزارش نمیشه به خوبی ازش استفاده کرد دوتا منوی راست کلیک تعریف کردم یکی برای فراخوانی در فرم و یکی برای فراخوانی در گزارش اما منوی ایجاد شده برای گزارش خوب عمل نمیکنه از دوستان اگه كسي ميتونه
    لطفا راهنمایی کنه

    با تشكر فراوان
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله n_ali27 : دوشنبه 20 دی 1395 در 21:16 عصر

  8. #8

    نقل قول: ایجاد راست کلیک در Access

    دوستان لطفا راهنمايي كنند

  9. #9
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: ایجاد راست کلیک در Access

    نقل قول نوشته شده توسط n_ali27 مشاهده تاپیک
    سلام
    برنامه خوبی دست شما درد نکنه
    فقط یه سئوال؟
    این کد تو فرم به خوبی جواب میده اما برای استفاده در گزارش نمیشه به خوبی ازش استفاده کرد دوتا منوی راست کلیک تعریف کردم یکی برای فراخوانی در فرم و یکی برای فراخوانی در گزارش اما منوی ایجاد شده برای گزارش خوب عمل نمیکنه از دوستان اگه كسي ميتونه
    لطفا راهنمایی کنه

    با تشكر فراوان


    دوست گرامی فایل ارسالی شما دارای مشکل نیست
    فقط در هنگام اجرای دستور راست کلیک بدلیل نبود فرم print خطا نشان میدهد

    لطف کنید و دقیق تر بفرمائید

    در پناه حق

  10. #10

    نقل قول: ایجاد راست کلیک در Access

    مشکل مربوط به فرم print نیست
    مشکل اینه که اگر از ابتدا در قسمتهای غیر خالی گزارش کلیک شود منوی مربوط به گزارش باز نمی شود اما اگر در قسمت های خالی گزارش کلیک شود منوی مربوط به گزارش باز می شود و بعدش اگر در هر قسمت گزارش کلیک راست شود منوی گزارش باز میشود
    مشکل مربوط به اولین راست کلیک در گزارشه که حتما باید در قسمت های خالی گزارش باشه
    آخرین ویرایش به وسیله n_ali27 : چهارشنبه 22 دی 1395 در 13:26 عصر

  11. #11
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: ایجاد راست کلیک در Access

    نقل قول نوشته شده توسط n_ali27 مشاهده تاپیک
    مشکل مربوط به فرم print نیست
    مشکل اینه که اگر از ابتدا در قسمتهای غیر خالی گزارش کلیک شود منوی مربوط به گزارش باز نمی شود اما اگر در قسمت های خالی گزارش کلیک شود منوی مربوط به گزارش باز می شود و بعدش اگر در هر قسمت گزارش کلیک راست شود منوی گزارش باز میشود
    مشکل مربوط به اولین راست کلیک در گزارشه که حتما باید در قسمت های خالی گزارش باشه
    دوست گرامی با سلام مجدد


    راست کلیک رو برای این به روش معرفی کردم که به صورت خاص و برای یک فیلد ، یک آبجکت و یا یک کنترل هم قابلیت استفاده مجزا داشته باشه همون طور که در برنامه نویسی با زبان های مختلف استفاده میکنیم

    ایراد شما در ریپورت هم همین موضوعه
    شما فقط در onmouseup ریپورت قرار دادید برای همین هم هست که همچین مشکلی دارید

    نمونه اصلاح شده رو قرار دادم
    فایل های ضمیمه فایل های ضمیمه

  12. #12

    نقل قول: ایجاد راست کلیک در Access

    سلام
    این مشکل با این روش حل میشه ولی یه مشکل دیگه ایجاد مشه و اون افزایش حجم برنامه است زیرا باید در تمام گزارشات این کار انجام بشه. در یک برنامه ساده و مختصر که تعداد گزارشات کمه میشه این کار را انجام داد ولی در یک برنامه گسترده این روش منجر به افزایش حجم برنامه میشه. آیا روش دیگه ای هست که بشه با کد نویسی یه دستور صادر کرد که فقط مربوط به کل گزارش باشه تا از حجم برنامه کاسته بشه؟

  13. #13
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: ایجاد راست کلیک در Access

    نقل قول نوشته شده توسط n_ali27 مشاهده تاپیک
    سلام
    این مشکل با این روش حل میشه ولی یه مشکل دیگه ایجاد مشه و اون افزایش حجم برنامه است زیرا باید در تمام گزارشات این کار انجام بشه. در یک برنامه ساده و مختصر که تعداد گزارشات کمه میشه این کار را انجام داد ولی در یک برنامه گسترده این روش منجر به افزایش حجم برنامه میشه. آیا روش دیگه ای هست که بشه با کد نویسی یه دستور صادر کرد که فقط مربوط به کل گزارش باشه تا از حجم برنامه کاسته بشه؟

    نمونه ارسال شد
    فایل های ضمیمه فایل های ضمیمه

  14. #14

    نقل قول: ایجاد راست کلیک در Access

    سلام دوست عزیز
    ممنون از نمونه ارسالی ، برنامه به خوبی جواب داد

تاپیک های مشابه

  1. آموزش: ایجاد منو راست کلیک در فرم
    نوشته شده توسط mojahed.morteza در بخش Access
    پاسخ: 2
    آخرین پست: سه شنبه 29 اسفند 1391, 19:25 عصر
  2. ایجاد منوی راست کلیک در List Box
    نوشته شده توسط saeedvir در بخش برنامه نویسی در 6 VB
    پاسخ: 4
    آخرین پست: جمعه 10 مهر 1388, 16:57 عصر
  3. ایجاد راست کلیک در برنامه
    نوشته شده توسط saber4166 در بخش C#‎‎
    پاسخ: 3
    آخرین پست: سه شنبه 12 شهریور 1387, 00:22 صبح
  4. ایجاد منو راست کلیک در فرمی که border ندارد؟
    نوشته شده توسط Ahmad Khodaie در بخش برنامه نویسی در 6 VB
    پاسخ: 2
    آخرین پست: یک شنبه 06 شهریور 1384, 17:08 عصر

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

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

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