شما می توانید با مخفی کردن منوهای اکسس برنامه نوشته شده خود را حرفه ای تر نمایش دهید و برای رسیدن به این منظور به دو صورت زیر می توانید اقدام کنید.مانند تصویر زیر که هیچیک از منوهای اکسس در آن دیده نمی شود ومنوها کاملا اختصاصی است:
مخفی کردن منوهای اکسس
روش اول :
در رویداد Onload فرم ال سایتتون که میتونه فرم اسپلش یا فرم لاگین باشید کد زیر را بنویسید:
DoCmd.ShowToolbar “ribbon”, acToolbarNo
البته مشخصه که اگه بخواید که منوها رو یا بهتر بگم ریبون رو دوباره ببنید کافیه کد بالا رو به شکل زیر تغییر بدین :
DoCmd.ShowToolbar “ribbon”, acToolbarYes
روش دوم استفاده از ماژول:
با زدن کلیدهای Alt+F11 به محیط VBA می رید و در قسمت خالی سمت چپ ( قسمت ماژولها ) کلید راست می کنید و گزینه Insert Module رو انتخاب می کنید که یک صفحه خالی باز میشه که کد زیر رو داخلش قرار میدید.
Option Compare Database
Option Explicit
Global Const SW_HIDE = 0
Global Const SW_SHOWNORMAL = 1
Global Const SW_SHOWMINIMIZED = 2
Global Const SW_SHOWMAXIMIZED = 3
Private Declare Function apiShowWindow Lib “User32” _
Alias “ShowWindow” (ByVal hWnd As Long, _
ByVal nCmdShow As Long) As Long
Function fSetAccessWindow(nCmdShow As Long)
Dim loX As Long
Dim loForm As Form
On Error Resume Next
Set loForm = Screen.ActiveForm
If Err <> 0 Then
loX = apiShowWindow(hWndAccessApp, nCmdShow)
Err.Clear
End If
If nCmdShow = SW_SHOWMINIMIZED And loForm.Modal = True Then
MsgBox “Cannot minimize Access with ” _
& (loForm.Caption + ” “) _
& “form on screen”
ElseIf nCmdShow = SW_HIDE And loForm.PopUp <> True Then
MsgBox “Cannot hide Access with ” _
& (loForm.Caption + ” “) _
& “form on screen”
Else
loX = apiShowWindow(hWndAccessApp, nCmdShow)
End If
fSetAccessWindow = (loX <> 0)
End Function
خب حالا کافیه در رویداد OnOpen یا Onload فرم مد نظرتون که میتونه فم اولتون باشه یکی از حالتهای موجود تو ماژول رو فراخوانی می کنید با کد زیر:
Call fSetAccessWindow(0) —>همه پنجره ها و حتی خود نرم افزار اکسس را نمایش می دهد – که جالب نیست و برای بسته شدن اکسس هم باید کدنویسی کنید
Call fSetAccessWindow(1)—->همه پنجره ها رو مثل اول نمایش میده – یعنی اگه با کد بالا مخفی کرده بودید با این کد می تونید به حالت جدید برگردونید
Call fSetAccessWindow(2)—-> منوهای اکسس رو مخفی میکنه
بنده به شخصه از روش اول استفاده می کنم ، که البته با ریبونهای اختصاصی میشه اون رو جذاب تر کرد . به عنوان مثال اگر به منوهای گزارشات مثل چاپ گزارش و غیره نیاز داشته باشین می تونید از فایل های Xml استفاده کنید که به زودی توی همین پست قرا میدم و با ویدیو آموزشی خواهم گفت چطوری ازشون استفاده کنید.
با سلام و عرض خدا قوت خدمت استاد ارجمندم جناب آقای بحری
استاد حالا که شما زحمت آموزش مخفی کردن منوهای اکسس را می دهید,
لطفاً آموزش ساخت منوی اختصاصی و قراردان ساعت آنالوگ را هم به شاگردان خود
آموزش دهید با تشکر
سلام جناب بحری
در موقع تایپ خط فرمان
Private Declare Function apiShowWindow Lib “User32” Alias “ShowWindow” (ByVal hWnd As Long, ByVal nCmdShow As Long) As Long
روی کلمه Function خطا می دهد.
آفیس 64 بیتی
متشکرم
اسکرین شات بذارید تا متن خطا رو ببینم
قبل از
function
از کلمه
ptrsafe
استفاده کنید.
سلام مهندس واقعا و الحق که استادین من یکی از طرفدارانتونم نمیدونم چی بگم ولی متشکرم عجرتون باخدا .
فقط مهندس لطف کنین اون فایل ورد رو کد نوشتین اونم بزارین برداریم مرسی
سلام جناب مهندس بحري لطفآ در مورد ساخت منوبار با اكسس 2007 به بالا توضيح مي دهيد؟
سلام آقاي بحري لطف مي كنيد در مورد ازكار انداختن ريبون فايل در اكسس 2010يا 2013 توضيح دهيد
اين سوال من بدليل از اين طريق مي شود(options) به جداول دست پيدا كرد و امنيت اطلاعات اكسس به خطر مي افت.ممنون مي شوم
مبحث مربوط به ساخت ریبونهای اخنصاصی برای اکسس رو مطالعه بفرمائید لطفا
سلام آقای بحری من از روش اول استفاده کردم پیغام خطا 2094 داد
سلام. من یکی از فرمها رو با کلیک راست روی اون در پنل سمت چپ اکسس 2007 مخفی(hide) کردم. الان برای نمایش آن چه کنم؟
باسلام فرم ورود که کدهای xml را درآن قرار داید را میشه لطفا بارگذاری کنید تا بتوانم استفاده کنم
استفاده از این روش وقتی می خواید روی سرور اجرا کنید تا حد زیادی منوط به سطح دسترسی ها میشه و باید فول اکسس به فایل بدید
باسلام لطفا فرم ورد کدهایxml را لطف کنید ممنونم
باسلام آقای بحری
آیا مارا لایق پاسخ دادن ندانستید
به هیچ عنوان این طور نیست فرصت نشده بررسی کنم .
اگر تیکت بزنید و فایل خودتون رو پیوست کنید ، بهتر می تونم بررسی کنم
این ماژول فقط در آفیس ۳۲ بیت کار می کنه
باسلام وعرض ادب و تشکر از راهنماییتون میخواستم ببینم این کد ها روی ۶۴ بین یا ویندوز ۱۰ جواب میده؟
سلام ، بله جواب میده
کد مخفی و غیره مخفی کردن نویگشین پل چی هست؟؟
با سپاس
با سلام
استاد کاش در مورد مخفی کردن برنامه اکسس هنگام کار با نرم افزار خودمون هم توضیح و آموزش قرار میدادین.من با استفاده از کد minimize در قسمت on load فرم اسپلش وقتی عمل میکنم کلا نرم افزار از دسترس خارج میشه.با اینکه قبلا دستور open form فرم اصلی رو هم نوشتم.
مبحث مهمی هست و کلافه ام کرده.لطفا بگید باید چه کنیم
با سلام و تشکر بسیار بابت اموزس های مفید .
ترفند بستن ریبون را انجام دادم اما وقتی دوباره فایل اکسس را باز میکنم دیگه کار نمیکنن . لطفا علت را توضیح دهید ممنون
با سلام
سپاس از زحمات شما
لطفا فایل ورد کد رو هم قرار بدید یا ایمیل بفرمایید تا بتونیم از این آموزش هم بهره ببریم.