كنت أريد أن أقوم بإخفاء شاشة الاكسيس ، فقمت بالبحث فى المنتديات الاجنبية و وجدت هذة الطريقة و جربتها و كانت سليمة 100 %
و نبدأ بالخطوات :
1 - نسخ هذا الكود و لصقة فى module و نسمية باى اسم فهذا لا يهم
Private Declare Function IsWindowVisible Lib "user32" (ByVal hwnd As Long) As Long Dim dwReturn As Long Const SW_HIDE = 0 Const SW_SHOWNORMAL = 1 Const SW_SHOWMINIMIZED = 2 Const SW_SHOWMAXIMIZED = 3 Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, _ ByVal nCmdShow As Long) As Long Public Function fAccessWindow(Optional Procedure As String, Optional SwitchStatus As Boolean, Optional StatusCheck As Boolean) As Boolean If Procedure = "Hide" Then dwReturn = ShowWindow(Application.hWndAccessApp, SW_HIDE) End If If Procedure = "Show" Then dwReturn = ShowWindow(Application.hWndAccessApp, SW_SHOWMAXIMIZED) End If If Procedure = "Minimize" Then dwReturn = ShowWindow(Application.hWndAccessApp, SW_SHOWMINIMIZED) End If If SwitchStatus = True Then If IsWindowVisible(hWndAccessApp) = 1 Then dwReturn = ShowWindow(Application.hWndAccessApp, SW_HIDE) Else dwReturn = ShowWindow(Application.hWndAccessApp, SW_SHOWMAXIMIZED) End If End If If StatusCheck = True Then If IsWindowVisible(hWndAccessApp) = 0 Then fAccessWindow = False End If If IsWindowVisible(hWndAccessApp) = 1 Then fAccessWindow = True End If End If End Function
----------------------
2- قم بعمل ماكرو أسمة mcrHide
ضع بة اكشن run code
و فى خانة Function ضع الكود التالى
fAccessWindow ("Minimize", False, False)------------------------------
3 - قم بعمل ماكرو أخر أسمة mcrRestore
ضع بة نفس الاكشن السابق run code
و فى خانة Function ضع الكود التالى
fAccessWindow ("Show", False, False)-------------------------------
4 - الأن الخطوة الاكثر مللاً إذا كانت لديك العديد من النماذج
قم بتغيير خصائص كل النماذج : popup قم بتحويلها إلى yes بدلاً من no
-------------------------------
5- فى النموذج الرئيسى الذى تريدة ان يبدأ بالفتح
ضع الكود التالى :
Private Sub Form_Open(Cancel As Integer) DoCmd.RunMacro "mcrHide" End Sub
-----------------------------
6 - فى كل التقارير ضع الكود التالى
عند الحدث OnOpen
DoCmd.RunMacro "mcrRestore"
و عند الحدث OnClose
DoCmd.RunMacro "mcrHide"
-------------------------------
و بهذا تكون قد إنتهت الخطوات
ربما تظهر انها خطوات طويلة ، لكنها طريقة فعالة جداً و تعطى منظر إحترافى جميل للبرنامج
و اعتذر للإطالة
و تحياتى للجميع


