الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تغيير دقة الشاشة إذا كانت مخالفة فقط

مغلق
بدأه mas123 في 30 يوليو 2007 · 17 رد · 2,345 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

هذا الكود جزء من مثال للأخ نصر إسماعيل كان يقوم بتغيير دقة الشاشة إلى 1024*768 قبل فتح البرنامج ثم العودة إلى 800*600 بعد الخروج فعدلت فيه ووضعت الرسالة في بداية المثال ولكن في كل مرة فتح حتى وإن كانت دقة الشاشة 1024 يرسل نفس الرسالة ويقوم بنفس العمل

والمطلوب من الإخوة

إعادة الصياغة بحيث إذا كانت دقة الشاشة غير 1024*768 يظهر الرسالة أما غذا كانت 1024 فلا يقوم بعمل شيء

ممكن ؟

؟

db2.rar

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#2

بارك الله فيك

من سار على الدرب وصل

#3

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

بارك الله فيك اخي الكريم

انا ايضا احتاج الى ذلك ولكن اريد انه عند الانتهاء من البرنامج يعود لدقة الشاشة التى كانت قبل تشغيل البرنامج ايا كانت وليس شرط 800 * 600

#4

أخي الكريم sx1

هذا الكود خاص بتغيير دقة الشاشة إلى 1024*768 فقط ولا يرجعها إلى 800*600 لأن هناك من هم بطبيعة الحال 1024*768 فإذا رجعت دقة الشاشة إلى 800*600 فهذا غير ماكان عليه الجهاز ولذلك جعلت الكود لتغيير دقة الشاشة إلى 1024 ولا يرجعها إلى 800*600

وأضم صوتي إلى صوتك وأنادي عباقرة الأكسس

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

هل هذا ممكن ؟

؟

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#5

شكراا جزيلااا

#6

تفضل أخي الكريم

هذا برنامج قد قمت بعمله سابقا على هذه المشاركة

/index.php?showtopic=110309

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

الآن اجعل دقة الشاشة لديك 1024 * 768 ثم افتح قاعدة البيانات وانظر ماذا يحدث ثم قم بإغلاق قاعدة البيانات .

قم بتغيير دقة الشاشة لديك الى 800 * 600 ثم قم بتشغيل قاعدة البيانات مره ثانية وانظر ماذا يحدث

ملاحظة : تم تعديل الملف والحل النهائي في اخر المشاركة

بالتوفيق

#7

بارك الله فيك أختنا زهرة

ولكن يوجد جزء من المطلوب لم يتحقق

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

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#8

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

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

يوجد في الكود اداة شرط تتحقق من دقة الشاشة فلو كانت دقة الشاشة 1024*768 فيتم انهاء الحدث مباشرة بدون اظهار اي رساله وإذا كانت دقة الشاشة هي 800*600 فإن الرسالة تظهر وتطالبك بتغيير دقة الشاشة الى 1024*768 .

ماذا تقصد بهذه العبارة

اقتباس
وعند الخروج يعود كما كان

هل تقصد الخروج عند الخروج قاعدة البيانات وإغلاقها ام من الحدث بحيث نضع به زر أمر اضافي مثل Cancel

#9

حاولت الوصول للهدف مستعملا النموذج الخاص بك

مع بعض التعديلات في زر الخروج

وإن كان لها حل برمجي فأولي من الحل اليدوي هذا

zaChangeResolutionmas.rar

تم تعديل هذه المشاركة بواسطة mas123 في 30 يوليو 2007 في 21:59

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#10

تفضل اخي الكريم محمد صالح

الملف بعد التعديل

طريقة التعديل :

1. تم استحداث جدول جديد بإسم Table الغرض منه حفظ دقة الشاشة التي ستظهر في بدء التشغيل سواء 1024*768 او 800*600 وسوف يأخذ هذه المعلومات من النموذج مباشرة من خلال الحقلين الخاصة بإلإرتفاع او العرض .

هنا ضمنا ان الأرقام محفوظة منذ بدء التشغيل .

2. عندما تكون دقة الشاشة 1024*768 فإن الرسالة ولا النموذج ولا اي شيء يظهر لأن هذا هو الوضع الإفتراضي المطلوب .

عندما تكون دقة الشاشة 800*600 فإن الكود اولا يمرر هذه القيم للجدول اولا ثم يظهر الرسالة التي تخبرك بضرورة تغيير دقة الشاشة وبالطبع سوف توافق لكي تحصل على دقة شاشة 1024*768 مع اخفاء النموذج نهائيا .

3. عند ضغط انهاء برنامج الأكسيس فإن كود الإنهاء يتم استدعاؤه مباشرة وقبل ان يتم اغلاق البرنامج تظهر لك رسالة تخبرك ان دقة الشاشة السابقة كانت 800*600 حسب ما هو موجود في الجدول لذا سيتم استدعاء كود تغيير دقة الشاشة ويقوم بأخذ القيم من الجدول ويتم تغيير دقة الشاشة الى 800*600

4. تم استحداث ماكرو AutoExec لضمان اخفاء النموذج عند الفتح .

الآن كل ما عليك هو عمل التالي :

1. قبل فتح البرنامج اجعل دقة الشاشة لديك على 800*600 ثم قم بفتح القاعدة وانظر النتيجة سيتم تغييرها الى 1024*768

2. قم بإنهاء برنامج الأكسيس وسوف يتم تعديل دقة الشاشة الى وضعها السابق وهو 800*600

3. في حالة كانت دقة الشاشة اساسا على 1024*768 فلن يحدث اي شيء في البرنامج ولن يتغير شيء .

ملاحظة : تم تعديل الملف في آخر المشاركة

#11

بارك الله فيك

ولكن هذا الكود ينطبق على 800*600 فقط ولا ينطبق على 1152*864 مثلا أو 640*480 وحاولت إضافتهما في الحدث عند التحميل وعند النهاية فلم يفلح ذلك ما الخطأ يا زهرة المنتدى وريحانته ؟

تعبناك معانا !!!!

ChangeResolutionLAST.rar

تم تعديل هذه المشاركة بواسطة mas123 في 31 يوليو 2007 في 12:31

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#12

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

بارك الله فيك اختي زهرة وحفظك ورزقك التنزه بين زهور الجنة

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

#13

تفضل أخي الكريم

الملف بعد التعديل الأخير

قم بتغيير دقات شاشة مختلفه على جهازك ثم شغل البرنامج

مثلا ضع دقة الشاشة لديك اولا على 640 *480 ثم شغل البرنامج

او ضع دقة الشاشة على 800*600 ثم شغل البرنامج

او ضع دقة الشاشة على 1125* 864 ثم شغل البرنامج

ملاحظة : تم تعديل الملف في المشاركة التالية

#14

أختي الكريمة

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

ولكن هل جربت أن تكون دقة الشاشة القديمة 640 أو 1152 ؟

في البداية يحولهما إلى 1024 تمام

أما في النهاية فلا يرجع إلا 800*600 فإذا كانت الدقة القديمة 640 أو 1152 فلا تعود بل يغلق مباشرة

رغم أني أرى أن ترتيب الأكواد سليم جدا

ولكن لا ادري أين الخطأ؟

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#15

أخي الفاضل محمد صالح

تم التعديل النهائي على الملف واصبح جاهزا للإستخدام بالكثافات النقطية للشاشات وهي

640 × 480

800 × 600

1024 × 768

1152 × 864

1280 × 768

قم الآن بتغيير دقة الشاشة الى احد هذه الكثافات ثم قم بتشغيل البرنامج وانظر النتيجة

قم الآن بإغلاق البرنامج وانظر النتيجة .

zaChangeResolutionPro.rar

بالتوفيق

#16

ما شاء الله كان وما لم يشأ لم يكن

اللهم ارفع قدر أختي وزدها علما وانفع بها

بالمقارنة بين الكودين وجدت أنك

استبدلت في نهاية الحدث عند التحميل docmd.close ب exit sub

وفي الحدث عند النهاية استبدلت if me.oldw.value ب if me![oldw] وأريد لو سمحت

بعض الشرح لهذه الفروق وما قيمة كل منها ؟

؟

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#17

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

فبدلا من كود اغلاق النموذج docmd.close وضعت امر الخروج فقط من الكود وانهاءه exit sub مع الإحتفاظ بالنموذج مفتوح ولكنه مخفي .

اما بالنسبة لهذه العبارة if me.oldw.value فتعني الإشارة الى قيمة الحقل الموجود في النموذج المفتوح وبما انه كان في الكود السابق يتم اغلاقه فلا يتعرف عليها الكود ويعود الى الدقة 1024 × 768 لهذا قمت بتعديلها وذلك بوضعها بين القوسين المعقوفين

IF ME![OldW]

وتعني القيمه الموجوده في النموذج مهما كانت وطبعا هذه القيمة موجوده ومثبته في الجدول الذي هو مصدر النموذج

#18

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

بارك الله فيك اختي زهرة وحفظك وزادك علما على علم

هذا الموضوع مغلق.

مواضيع مشابهة