اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر (معدل)

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

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

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

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

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

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

New_Microsoft_Access_Application.rar

تم تعديل بواسطه helmy_foad
  • Like 5
  • Thanks 1
قام بنشر (معدل)

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

جزاك الله خيراً على هذا النقل والمثال .

الموضوع مثبت

تم تعديل بواسطه التقني
قام بنشر (معدل)

ألف شكر أخ التقنى على تثبيت الموضوع

و الحقيقة أننى أيضاً تعلمت طريقة اخرى من الأخت و الأستاذة زهرة

أيضاً تعمل بكفاءة و احب ان أفيد بها الزملاء فى منتدى اوفيسنا و هى كالتالى :

تقوم بعمل وحدة نمطية module تضع فيها هذا الكود :

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
ثم فى النموذج الأساسى الذى يبدأ عند فتح قاعدة البيانات قم بوضع هذا الكود فى صفحة اكواد vba
Private Sub Form_Open(Cancel As Integer)
fSetAccessWindow (SW_HIDE)
End Sub
ثم بعد ذلك نقوم بتغيير خصائص كل النماذج و التقارير الموجودة فى قاعدة البيانات بحيث أنة فى التبويب الكل أو (all) أبحث عن منبثق أو popup و إجعلة نعم أو yes ثم تحتة مباشرة شكلى او مشروط modal و إجعلة نعم أو yes ثم تحتة مباشرة نمط الحوار border style إجعلة مربع حوار او dialog و كما قلت هذا فى كل التقارير و النماذج اهم شئ ضع زر إنهاء للأكسيس فى الفورم بحيث تقوم بإغلاق البرنامج منة لكى لا يبقى الأكسيس عالقاً فى الذاكرة و أخيراً فى كل التقارير ضع الكود التالى فى صفحة اكواد vba
Private Sub Report_Open(Cancel As Integer)
DoCmd.Maximize
End Sub

و ذلك لكى يعمل التقرير بملئ الشاشة و ذلك عند عرض التقرير

و مرفق مثال على هذا من عمل الاخت زهرة

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

Hide_Access2003.rar

تم تعديل بواسطه helmy_foad
  • Like 1
قام بنشر (معدل)

شكرا على الشرح الجميل

ولكن مش شرط انك تضع زر لاغلاق الاكسس

يكفي الكود

DoCmd.Quit

عند الاغلاق(On Close)

تم تعديل بواسطه alhomam
  • 3 weeks later...
قام بنشر

السلام عليكم

اخى فى الله حلمى فؤاد

الف شكر على المجهود الرائع ونتمنى منك المزيد

لى سؤال ؟

كيف اعمل شريط ادوات للتقرير به زر الطباعه وزر اغلاق التقرير

مع كون القاعد محميه ولا يمكن العبث بها بالطريق التى اخبرتنا بها

ولك الف شكر منى

اخوك محمود

  • 4 weeks later...
قام بنشر

بارك الله فيكم إخوتي

ولكن كتبت ونفذت كل ما قلتم فظهر النموذج به زر الإغلاق مع أن النموذج المرفق للأخت زهرة ليس به زر إغلاق مما يعطي شكلا متقدما للبرنامج

أفيدونا

  • Like 1
قام بنشر
صورة لبرنامج الأخت زهرة
122.GIF
صورة لبرنامجي
123.GIF
فهل من يخبرني بالفرق في الخصائص بين البرنامجين
  • Like 1
قام بنشر (معدل)
صورة لبرنامج الأخت زهرة

122.GIF

صورة لبرنامجي

123.GIF

فهل من يخبرني بالفرق في الخصائص بين البرنامجين

يوجد فى الخصائص الخيار control box

قم بإعطائة القيمة no

تم تعديل بواسطه helmy_foad
  • Like 1
قام بنشر

جزاك الله خيرا أخي

أعطى الخيار السابق حلا لمشكلة زر الإغلاق

ماذا عن الجزء الأبيض على يسار وأسفل النموذج؟

  • Like 2
قام بنشر

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

لي ملاحظة صغيرة على طريقة الأخت زهرة في إخفاء نافذة الأكسس

وهي أن البرنامج لا يكون له زر في شريط المهام ولا يمكننا التحكم به إلا من خلال واجهته

فما الحل؟

  • Like 2
قام بنشر

ماذا تقصد بالتحكم فى البرنامج ؟

فأنت يمكنك إنشاء العديد من الأزرار لتأدية جميع الوظائف التى يحتاجها المستخدم

أرجو توضيح المقصود

قام بنشر

أخي العزيز

كل نافذة مفتوحة يوجد لها زر في شريط المهام يمكنك عمل كلك يمين عليه وغلقه مثلا أو على الأقل تعرف كم عدد التطبيقات المفتوحة ولكن هذه الطريقة لا تدل على أن هذا التطبيق له زر في شريط المهام ومن الممكن أن ينساه أحدنا ولا يعرف أنه مازال مفتوحا

وأذكر بما الحل في ظهور جزء بغير لون خلفية النموذج على يسار النموذج

بارك الله فيكم جميعا

  • Like 1
  • 2 weeks later...
  • 1 year later...
قام بنشر (معدل)
جعل الله هذا العمل في ميزان حسناتك ... واشكرك جدا علي الشرح الجميل .. وارجو كل الرجا الاستمرار في شرح كل جوانب الاكسس مع امثلة تطبيقية علي كل مايتم شرحه .. ولي رجاء . هو ان تجمع كل شروحاتك مع امثلة تطبيقية وتضعها في ملف واحد وترفعها علي الموقع ليستفيد منها الجميع وجزاكم الله خيرا .......وكل عام وانتم بخير بمناسبة شهر رمضان المبارك:clapping: تم تعديل بواسطه ابراهيم نجم
  • Like 1
قام بنشر (معدل)

أخوتي الغاليين

تحية طيبة وبعد ،،،،،،،،،،،،،

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

هناك طريقة سهلة لاخفاء شاشة الاكسس هي خطوتين فقط

كل ما عليك :

1. وضع هذا الكود في الوحدة النمطية

Public Declare Function ShowWindow Lib "user32.dll" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long

Public Sub HideAccess()
Call ShowWindow(Access.hWndAccessApp, 0)
End Sub

Public Sub ShowAccess()
Call ShowWindow(Access.hWndAccessApp, 5)
End Sub
2. في أول نموذج يتم فتحه ، ضع عند حدث تحميل أو حدث عند الفتح هذا الكود
HideAccess

وتغيير خصائص النموذج الى منبثق وشكلي أو مشروط الى القيمة نعم

لذا أرفق لكم قاعدة بيانات للأخت زهرة العبدلله تم تطبيق اخفاء شاشة الاكسس عليها.

بالتوفيق للجميع وبارك الله فيكم

HideAccess.rar

تم تعديل بواسطه كمال النحال
قام بنشر

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

ما نبحث عنها هو الطرق العملية للانشاء قواعد بيانات ناجحة من البداية وحتى النهاية بشرح مفصل ودقيق يفهم كل من يقرأها كما هو الحال في الشروحات التي تاتي باللغة الانكليزية

  • 3 months later...
قام بنشر

أشكر أساذتي الأجلاء على هذا الموضوع الممتع،

فعلا غير في خصائص النمادج ، ولكن كيف يتم تغيير خصائص الاستعلام؟ خصوصا اذا كان في النمودج الاصلي زر يفتح استعلام.

وعذرة على الإزعاج.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information