السلام عليكم ورحمة الله وبركاته
اريد ان اعمل زرين برز واحد كالتالي
عمل زر ابد
عندما اقوم بالضغط على زر ابدا يتحول تلقائيا الز الى ايقاف بكامل الخصائص ..
ارجو المساعدة ...
السلام عليكم ورحمة الله وبركاته
اريد ان اعمل زرين برز واحد كالتالي
عمل زر ابد
عندما اقوم بالضغط على زر ابدا يتحول تلقائيا الز الى ايقاف بكامل الخصائص ..
ارجو المساعدة ...
===
أستمد قوتي من ايماني بالله وأشعر بالراحه النفسية عندما اذكر اسم الله . الحمد لله
===
المشتاق الى الجنة
أبو صفاء - مسقط
===
أخي الكريم
السلام عليكم
اكتب الكود التالي في حدث عند النقر للزر
if me.cmd1.caption = "ابدأ" then me.cmd1.caption = "ايقاف" مجموعة من الأوامر else me.cmd1.caption = "ابدأ" مجموعة من الأوامر end if
علماً بأنني كتبت الكود في المتصفح ولم أجربه
تحياتي
أخوك / أبو هاجر
بسم الله الرحمن الرحيم
الأخ أبو هاجر طريقتك صحيحة و لكن أفضل أن تعدل على النحو التالي :
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
مع التحية
أخي الكريم فينوس
السلام عليكم
أولاً شكراً على اهتمامك وملاحظتك
اقتباسالسبب هو إمكانية إتاحة معالجة الخطأ في الكود قبل تعديل العنوان
لا تنس أخي أن السطر الأول هو نفسه أمر ويمكن أن يكون الخطأ فيه ولذلك فالمسألة مسألة ترتيب فقط أما معالجة الخطأ فيمكن أن يكون فيها أمر لإعادة عنوان الزر أو حتى لضبطه بعنوان آخر كما تعلم
اقتباسبيمكن اتباع طريقة Select case وهي الطريقة المفضلة عندي
كما تعلم فإن طرق البرمجة كثيرة لكن لكل عبارة مناسب وأنسب وبما أن قيم المتغير في المثال السابق هي احتمالان فقط فلماذا استخدام عبارة select case التي تستخدم عادة مع المتغيرات ذات القيم المتعددة
ولو استخدمنا عبارة select case في مثل المثال السابق لما كان هناك أي فائدة لعبارة if then else التي هي أكثر شيوعاً واستخداما
طبعاً من حقك أن تستخدم ما تشاء لكنني أتحدث هنا عن الأصح والأنسب
أخيراً شكراً على ملاحظتك ومداخلتك
أخوك / أبو هاجر
أخي العزيز أبوهاجر :
لا أريد أن أقلل من كلامك و لكن اعذرني أن أسألك سؤالاً :
التتبع المنطقي لعباراتك كما يلي :
إذا كان عنوان الزر "ابدأ" فحوله إلى "ايقاف ثم نفذ مجموعة الأوامر ..و إلا ..
لنفترض أنه قام بتحويل عنوان الزر و حدث خطأ في تنفيذ مجموعة الأوامر عندها سياق الكود سيتغير بسبب تغير عنوان الزر ..و أنت تعلم بأن معالجة الخطأ تتم في مكان وقوع الخطأ و إذا أردت فأرسل لك مثالاً يوضح الفرق بين طريقتي و طريقتك ..
أما بالنسبة لعبارة Select فمعك حق و لا أنكر ذلك و لكنني أفضل هذه الطريقة كتعميم ..
أرجو المعذرة ..
مشكورين وجزاكم الله خيرا
===
أستمد قوتي من ايماني بالله وأشعر بالراحه النفسية عندما اذكر اسم الله . الحمد لله
===
المشتاق الى الجنة
أبو صفاء - مسقط
===
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
هذا الموضوع مغلق.
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…