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

كيف أصنع زرين في زر واحد ؟

مغلق
بدأه أبو صفاء في 24 يناير 2003 · 6 رد · 706 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

اريد ان اعمل زرين برز واحد كالتالي

عمل زر ابد

عندما اقوم بالضغط على زر ابدا يتحول تلقائيا الز الى ايقاف بكامل الخصائص ..

ارجو المساعدة ...

===

أستمد قوتي من ايماني بالله وأشعر بالراحه النفسية عندما اذكر اسم الله . الحمد لله

===

المشتاق الى الجنة

أبو صفاء - مسقط

===

#2

أخي الكريم

السلام عليكم

اكتب الكود التالي في حدث عند النقر للزر

if me.cmd1.caption = "ابدأ"  then



me.cmd1.caption  = "ايقاف"



مجموعة من الأوامر



else



me.cmd1.caption  = "ابدأ"



مجموعة من الأوامر



end if

علماً بأنني كتبت الكود في المتصفح ولم أجربه

تحياتي

أخوك / أبو هاجر

#3

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

الأخ أبو هاجر طريقتك صحيحة و لكن أفضل أن تعدل على النحو التالي :

if me.cmd1.caption = "ابدأ"  then

مجموعة من الأوامر

me.cmd1.caption  = "ايقاف"

else

مجموعة من الأوامر

me.cmd1.caption  = "ابدأ"

end if

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

و بيمكن اتباع طريقة Select case وهي الطريقة المفضلة عندي

select case me.cmd1.caption  

case "ايقاف"

مجموعة من الأوامر

me.cmd1.caption  = "ابدأ"

case "ابدأ"

مجموعة من الأوامر

me.cmd1.caption  = "ايقاف"

end select

مع التحية

#4

أخي الكريم فينوس

السلام عليكم

أولاً شكراً على اهتمامك وملاحظتك

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

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

اقتباس
بيمكن اتباع طريقة Select case وهي الطريقة المفضلة عندي

كما تعلم فإن طرق البرمجة كثيرة لكن لكل عبارة مناسب وأنسب وبما أن قيم المتغير في المثال السابق هي احتمالان فقط فلماذا استخدام عبارة select case التي تستخدم عادة مع المتغيرات ذات القيم المتعددة

ولو استخدمنا عبارة select case في مثل المثال السابق لما كان هناك أي فائدة لعبارة if then else التي هي أكثر شيوعاً واستخداما

طبعاً من حقك أن تستخدم ما تشاء لكنني أتحدث هنا عن الأصح والأنسب

أخيراً شكراً على ملاحظتك ومداخلتك

أخوك / أبو هاجر

#5

أخي العزيز أبوهاجر :

لا أريد أن أقلل من كلامك و لكن اعذرني أن أسألك سؤالاً :

التتبع المنطقي لعباراتك كما يلي :

إذا كان عنوان الزر "ابدأ" فحوله إلى "ايقاف ثم نفذ مجموعة الأوامر ..و إلا ..

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

أما بالنسبة لعبارة Select فمعك حق و لا أنكر ذلك و لكنني أفضل هذه الطريقة كتعميم ..

أرجو المعذرة ..

#6

مشكورين وجزاكم الله خيرا

===

أستمد قوتي من ايماني بالله وأشعر بالراحه النفسية عندما اذكر اسم الله . الحمد لله

===

المشتاق الى الجنة

أبو صفاء - مسقط

===

#7

Option Compare Database

Dim DCom As Integer

Option Explicit

Private Sub Com_Click()

On Error Resume Next

If DCom = 0 Then

MsgBox "الامر الاول"

DCom = 1

Com.Caption = "عنوان الامر الاول"

Exit Sub

End If

If DCom = 1 Then

MsgBox"الامر الثاني"

DCom = 0

Com.Caption = "عنوان الامر الثاني"

Exit Sub

End If

End Sub

Private Sub Form_Open(Cancel As Integer)

DCom = 0

Com.Caption = "عنوان الامر الاول"

End Sub

وكلما اضفة قيم للمتغير كلما حصلت على امر اخر

تعني بامكانك ان تقول

If DCom = 1 Then

MsgBox"الامر الثاني"

DCom = 2

Com.Caption = "عنوان الامر الثالث"

Exit Sub

End If

If DCom = 2Then

MsgBox"الامر الثالث"

DCom = 0

Com.Caption = "عنوان الامر الول"

Exit Sub

End If

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…