• 0
helmy_foad

6 خطوات لإخفاء شاشة الاكسيس

سؤال

كنت أريد أن أقوم بإخفاء شاشة الاكسيس ، فقمت بالبحث فى المنتديات الاجنبية و وجدت هذة الطريقة و جربتها و كانت سليمة 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"

-------------------------------

و بهذا تكون قد إنتهت الخطوات

ربما تظهر انها خطوات طويلة ، لكنها طريقة فعالة جداً و تعطى منظر إحترافى جميل للبرنامج

و اعتذر للإطالة

و تحياتى للجميع

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

12 إجابة على هذا السؤال .

  • 0

اخ حلمي

بعد التحية والاحترام

يوجد هنا العديد من المشاركات المتعلقة باخفاء شاشة الاكسس

http://www.arabteam2000-forum.com/index.ph...p;hl=اخفاء+شاشة

http://www.arabteam2000-forum.com/index.ph...p;hl=اخفاء+شاشة

http://www.arabteam2000-forum.com/index.ph...amp;#entry35404

اذا كانت الطريقة مختلفة فيرجى الايضاح او وضع ملف به الاكواد والنماذج والتقارير جاهزة

حتى لايكون هناك خطأ في تطبيق الاكواد

او يصعب الموضوع على شخص مبتدى مثلي

هذا من وجهة نظري البسيطة - فانا مجرد عضو عادي هنا وقد يكون للخبراء رأي مختلف

وفي الختام سواء كانت النتيجة متشابهة او مختلفة

فاعتقد بان مساعدتك لايصال المعلومة للجميع تشكر عليها

وتقبل مني اشد التحية والاعجاب

اخوك ابو عبدالله

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أشكرك اخ enjoy على الرد

الطريقة التى اوردتها انا مختلفة بعض الشئ

لكن ما جعلنى أضعها هنا هو اننى جربت عدة طرق ، و جربت أحد الامثلة الجاهزة ، عن طريق إستيراد الماكرو و الموديول

و لم تعمل معى اى طريقة منهم

لكن عندما وجدت هذة الطريقة فى المنتدى الاجنبى ، و قمت بتنفيذ الخطوات بالتفصيل كما وردت بالشرح

كانت النتيجة رائعة

عموماً أعتقد أن إذا كان الموضوع مكرر أو غير مفيد فسيحذفة المشرفون بدون تردد

و أنا لم أريد من وراء الموضوع إلا الإفادة

فأنا مبتدئ بالأكسيس و لا زلت فى أول الطريق و غير مؤهل لعمل مواضيع تتعلق بالأكسيس

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بارك الله فيك وجزاك الله خير

مجهود تشكر عليه

وياليت لو كانت هذه الخطوات في مثال مرفق

تحياتي

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

خليتني ازعل من نفسي

حرام عليك

انا مجرد عضو عادي - ورايي لايهم

بل انا متاكد بان جميع المتواجدين هنا اعضاء ومشرفين يحبون اعطاء الرأي

لكن مارغبت في معرفته هو هل الطريقة هي نفسها او مختلفة عشان اجرب

لاني ما افهم في الاكوا بدون تطبيق

وانت ماشاءالله

اكوادك كثيرة

انت صديقي

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم ورحمة الله وبركاته أخي helmy

بارك الله فيك ونفع بعلمك .. ومرحبا بك معنا في قسم الأكسس

مثالك جميل ومفيد

أخوك اكسير

تم تعديل بواسطه ekseer
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أستاذنا ekseer

اشكرك على تشجيعك لى و على تشريفك للموضوع

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

طريقة جدا رائعة اخي حلمي بارك الله فيك - بدون مجاملة

بس عندي فقط ملاحظة وهي بسيطة جدا - قد تكون لاتذكر

وهي انني لاحظت وجود برنامج الاكسس في شريط العنوان بالاسفل - مما يدل على تصغير خلفية الاكسس

ولكن المستخدم يستطيع ارجاع الخلفية بمجرد الضغط على اسم البرنامج في شريط العنوان

لاتنسى انت صديقي - يعني انتظر ردك علي وبدون مجاملة

وصدقني حنا هنا للتعلم وانا شخص استفدت الكثير من التصحيح من اخواني في هذا المنتدى الذي جمع فيما بيننا

صديقك المخلص

ابو عبدالله

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخي الفاضل حلمي فؤاد

السلام عليكم ورحمة الله وبركاته

بارك الله فيك على المشاركة

كما ذكر لك الأخوان انه يوجد العديد من المشاركات خاصة بإخفاء شاشة الأكسيس ومع هذا دعني اوضح لك الفرق بين طريقة المنتديات الأجنبية وطريقة المنتديات العربية ومن ثم قارن بين الطريقتين وانت الحكم .

كما تفضلت انك وجدت طريقة اخفاء شاشة الأكسيس من المنتديات الأجنبية في 6 خطوات مع وحدة نمطية بها حوالي 30 سطر من الأكواد البرمجية اضافة الى ذلك عدد 2 ماكرو .

حسنا ........

اقول لك ان طريقة المنتديات العربية في اخفاء شاشة الأكسيس تكون في 3 خطوات فقط مع وجود وحدة نمطيه بها 5 اسطر من الأكواد البرمجية .

وهذه هي طريقة المنتديات العربية :

يمكن فتح النموذج او التقرير فقط مع اخفاء شاشة الاكسيس حسب الطريقة التالية

1. ستجد في المثال المرفق وحدة نمطية بإسم api_ShowWindow يمكنك من استيرادها الى قاعدة البيانات لديك يوجد بها 5 أسطر فقط على النحو التالي :

 Global Const SW_HIDE = 0
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
loX = apiShowWindow(hWndAccessApp, nCmdShow)
End Function

انسخ هذا الكود وضعه في وحده نمطية جديده لديك في قاعدة البيانات

2. افتح النموذج الخاص بك في وضع التصميم ومن ثم اختر خصائص النموذج ثم اختر التبويب حدث وضع في حدث عند الفتح هذا الكود

 Private Sub Form_Open(Cancel As Integer)
fSetAccessWindow (SW_HIDE)
End Sub

3. الان اختر ايضا خصائص النموذج واختر التبويب الكل وضع التالي

منبثق : نعم

شكلي او مشروط : نعم

نمط الحدود : مربع حوار

HA.gif

ملاحظة هامة : يجب وضع زر انهاء الأكسيس على النموذج الأصلي والا سوف يبقى برنامج الأكسيس عالقا في الذاكرة وادارة المهام وطبعا لم يتم ذكر هذه الملاحظة في طريقة المنتديات الأجنبية

انتهت طريقة المنتديات العربية

ملاحظة : اذا كان لديك نماذج اخرى غير النموذج الاصلي فنقوم بالتالي

1. نضع الكود السابق الخاص بإستدعاء الوحدة النمطية في اول نموذج فقط عند حدث الفتح كما تم شرحه

 Private Sub Form_Open(Cancel As Integer)
fSetAccessWindow (SW_HIDE)
End Sub

2. باقي النماذج جميعا نختار لها فقط من خصائص النموذج

منبثق : نعم

شكلي او مشروط : نعم

نمط الحدود : مربع حوار

ولا نضع بها كود استدعاء الوحدة النمطية فقد تم استدعاؤه مسبقا في النموذج الاول

وهذا مثال قم بتجربته وقارن بين طريقة المنتديات الأجنبية والمنتديات العربية .

وحياك الله اخي حلمي بين اخوانك العرب .

Hide_Access2003.rar

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

يشرفنى جداً رد الأخت و الأستاذة الفاضلة زهرة على موضوعى

و أنا من أشد المعجبين بعلمك الغزير فى هذا المجال

و أنا لم أكن أقصد المقارنة بين المنتديات العربية و الأجنبية ، و لكن كل مشكلتى أننى يبدو أننى لم أبحث جيداص فى المنتديات العربية

لأننى وجدت مثال فى أحد المنتديات العربية و لم يفلح معى

أو ربما أن الشرح لم يكن كافياً

فبمجرد أن كتبت فى جوجل hide access window

وجدت الكثير من المواضيع التى بها شرحاً وافياً

و عندما قمت بتطبيق هذا الموضوع عندى ، وجدت أنة يعمل بكفاءة

لذا قررت مشاركة الأعضاء فى هذا الموضوع لتعم الإستفادة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخي الكريم اشكرك جزيلا على طريقتك..

ولكن بصراحة الطرق التي استخدمتها حتى الان هي من المشاركات عدد من المشاركات التي طرحها اخي Enjoy وكلها شغالة 100% وبصراحة في البرامج الخمس اللي صرت طارحها لليوم للتسويق مستخدم احدى الطرق من عمل زهرة المنتدى..

حياك الله وعلى راي اخي اكسير اخلا بك معنا في منتدى اكسس

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بسم الله الرحمن الرحيم

بارك الله في مجهوداتكم اخواني

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
زوار
This topic is now closed to further replies.

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .