عندى فورم وضعت عليه عدد اتنين button واحد maximize والآخر restore
docmd.Maximize
docmd.Restore
والسؤال
كيف يمكن دمجهم فى زر واحد مثل الويندوز بحيث اذا تم الضغط عليه يجعل الفورم maximize واذا تم الضغط عليه مرة اخرى يعود حالة الفورم restore
شكرا لكم
عندى فورم وضعت عليه عدد اتنين button واحد maximize والآخر restore
docmd.Maximize
docmd.Restore
والسؤال
كيف يمكن دمجهم فى زر واحد مثل الويندوز بحيث اذا تم الضغط عليه يجعل الفورم maximize واذا تم الضغط عليه مرة اخرى يعود حالة الفورم restore
شكرا لكم
إليك أحد الطرق السهلة والجميلة في هذا المثال
يمكنك استخدام متغير من integer و تعطيه قيمة ابتدائية 1 , و هي في حالة restore و عند الضغط على الـ command يتغير الى 0 و كذلك التافذة الى restore .
فيكون الشرط كالتالي :
تفحص حالة المتغير , هل هي 1 ( و هي maximize ) ؟ اذا نعم نفذ ما يلي :
غيره إلى 0
غير التافذة الى restore
تغيير الـ caption على الـ command للإشارة إلى حالة النافذة .
إعمل شرط آخر لعكس الحالة مع restore
شكرا جزيلا اخى القحم على الفكره الجميله وهذا هو ما اريد فعلا وان امكن توضيح كيف تتغير صورة الزر مع تغيير الحالة كما فى مثالك وماذا اذا كانت صوره image هى التى سوف استخدمها للضغط عليها وطبعا لا يوجد لها الامر caption فكيف استعيض عن الخاصية caption فى حالة ان الكائن عباره عن صوره وليس زر
اخى my oracle شكرا جزيلا على المساهمه وان امكن المساعده ايضا فى الرد على اسئلتى جزاك الله خيرا
تم تعديل هذه المشاركة بواسطة MOHAMED ARAFA في 13 سبتمبر 2012 في 16:41
الفكرة هي كما قال شريكي my oracle هو إيجاد شيء يمكن فحص قيمته عند التغير (متغير مثلا..)
في مثالي الأول اعتمدت على تغير قيمة عنوان زر الأمر لفحص قيمته.. استخدمت خط الرموز ( Web dings ) لعكس قيمة العنوان إلى الرمز المشاهد في زر الأمر
إذا كنت تريد استخدام مكون الصورة لهذا الغرض فيمكن إنشاء متغير لهذا الغرض واتباع التعليمات التي ذكرها شريكي على أن تبدل الصورة عند تغير القيمة المفحوصة..
أو تتبع الحيلة المطبقة في المثال التالي والتي تعتمد على دمج الصورتين في صورة واحدة.. ومن ثم إزاحتها يمينا أو شمالا بناء على فحص قيمة اتجاه الصورة .. مع مراعات أن تكون خاصية (Size Mod) على الوضع (Clip).
إليك المثال بعد التعديل
تفضل اخي الكريم : محمد عرفه
اضافة لما تفضل به الأخوة الكرام
سوف نستخدم صورتين تحت بعضهما البعض ويتم التبديل بينهما بواسطة الأمر Visible
حسب الكود التالي
كود تكبير النموذج
Private Sub PicM_Click() DoCmd.Maximize Me.PicM.Visible = False Me.PicR.Visible = True End Sub
كود استعادة النموذج
Private Sub PicR_Click() DoCmd.Restore Me.PicM.Visible = True Me.PicR.Visible = False End Sub
بالتوفيق
شكرا جزيلا اخى القحم على الفكره الرائعه
وطبعا جميع كلمات الشكر لن تستطيع ان توفى للاخت زهره حقها
شكرا لكم جميعا