تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] كيفية اضافة اكثر من ثلاث معاملات الى عامل التشغيل بواسطة If
#1
السلام عليكم و رحمة الله و بركاته
اخوتي الكرام هل يوجد طريقة او بديل لاضافة العديد(اكثر من ثلاث) من العناصر الى سلسلة عامل التشغيل بالشرط if
على سياق :  someString = someString If(someString="firstString","secondString","thirdString")
من المفروض ان السلسلة السابقة لا تقبل اكثر من ثلاث عناصر فهل يوجد طريقة ما او بديل لذلك او لتلك العملية
و لتوضيح الفكرة اكثر ارفق مثال بسيط ...ارجو افادتي ان امكن
PHP كود :
Public Class Form1
    Dim serveurnumber 
As String ""
 
   Private Sub Button1_Click(sender As ObjectAs EventArgsHandles Button1.Click
        Dim URL 
As String "https://server13.mp3quran.net/basit_mjwd/002.mp3"
 
       Dim URL1 As String URL.Replace("server13"serveurnumber).Replace("basit_mjwd""minsh")
 
       serveurnumber = If(serveurnumber "server8""server7""server10")
 
       AxWindowsMediaPlayer1.URL URL1
    End Sub
End 
Class 


الملفات المرفقة
.rar   مثال.rar (الحجم : 202.96 ك ب / التحميلات : 22)
الرد }}}
تم الشكر بواسطة: سعود , سعود , ابو روضة
#2
وعليكم السلام ورحمة الله وبركاته
الجملة الشرطية المذكورة في سؤالك، أظن أنك فهمتها خطأ،، 
فطريقة استخدامها غير منطقية ..

على كل هي تعني : إذا تحقق الشرط(Condition) قم بتنفيذ (True)، وإذا لم يتحقق الشرط : نفذ (False) وهي تأخذ الشكل التالي :
كود :
Result = If(Condition, True, False)
ولا يمكن أن تأخذ أكثر من احتمالين، إما الشرط متحقق أو لا ..

وهي نفسها جملة الشرط التالية :
كود :
If Condition Then
   Result = True
Else
   Result = False
End If







في الكود عندك :
كود :
Dim serveurnumber As String = ""

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
   Dim URL As String = "https://server13.mp3quran.net/basit_mjwd/002.mp3"
   Dim URL1 As String = URL.Replace("server13", serveurnumber).Replace("basit_mjwd", "minsh")
   serveurnumber = If(serveurnumber = "server8", "server7", "server10")

   AxWindowsMediaPlayer1.URL = URL1


End Sub

تطلب استبدال ("server13") بـ (serveurnumber)  والتي تساوي  لا شيء ("")

ثم تضع جملة المقارنة اذا (serveurnumber) = ("server8")

أصلاً هي فارغة، فعلي أي أساس تطلب المقارنة ؟؟!!
قال صلى الله عليه وسلم: 
«كلمتان خفيفتان على اللسان 
ثقيلتان في الميزان،حبيبتان إلى الرحمن: 
سبحان الله وبحمده، سبحان الله العظيم».
الرد }}}
تم الشكر بواسطة: سعود , سعود , ابو روضة
#3
(15-02-23, 01:21 PM)Taha Okla كتب : وعليكم السلام ورحمة الله وبركاته
الجملة الشرطية المذكورة في سؤالك، أظن أنك فهمتها خطأ،، 
فطريقة استخدامها غير منطقية ..

على كل هي تعني : إذا تحقق الشرط(Condition) قم بتنفيذ (True)، وإذا لم يتحقق الشرط : نفذ (False) وهي تأخذ الشكل التالي :
كود :
Result = If(Condition, True, False)
ولا يمكن أن تأخذ أكثر من احتمالين، إما الشرط متحقق أو لا ..

وهي نفسها جملة الشرط التالية :
كود :
If Condition Then
   Result = True
Else
   Result = False
End If







في الكود عندك :
كود :
Dim serveurnumber As String = ""

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
   Dim URL As String = "https://server13.mp3quran.net/basit_mjwd/002.mp3"
   Dim URL1 As String = URL.Replace("server13", serveurnumber).Replace("basit_mjwd", "minsh")
   serveurnumber = If(serveurnumber = "server8", "server7", "server10")

   AxWindowsMediaPlayer1.URL = URL1


End Sub

تطلب استبدال ("server13") بـ (serveurnumber)  والتي تساوي  لا شيء ("")

ثم تضع جملة المقارنة اذا (serveurnumber) = ("server8")

أصلاً هي فارغة، فعلي أي أساس تطلب المقارنة ؟؟!!
شكرا على الرد
دعني افسر هذا السطر و الذي هو صلب السؤال

كود :
serveurnumber = If(serveurnumber = "server8", "server7", "server10")

ال serveurnumber  ياخذ قيمته  او بالاحرى نصه من  السلسلة فاما server8   او server7 او server10
ليس مقارنة بل و ان صح القول بمثابة توليفة ان وجد اسم السيرفر في القائمة يتم استكمال السطر التابع ل URL1=...... و منه يتم تشغيل الملف الصوتي المناط به
وان لم يوجد لا يشتغل
ملخص القول كيف يمكن اضافة عناصر اخرى لتلك السلسلة اي (سيرفر8,سيرفر7,سيرفر10,وهكذا)
ارجو انى قد اوصلت الفكرة من السؤال
الرد }}}
تم الشكر بواسطة: سعود , ابو روضة , ابو روضة , ابو روضة
#4
توضيح (تصحيح مفهوم ) لهذا الكود :
كود :
serveurnumber = If(serveurnumber = "server8", "server7", "server10")

هذا يعني إذا كان المتغير  (serveurnumber) يساوي السيرفر ("server8")  قم يايتبداله بـ ("server7")  وإذا كان لا يساويه استبدله بـ ("server10")
فالعمليةو ليست تتالي أو تحقق من شغل السيرفر فيشغل عليه وإن لم يجد فيشغل على الذي يليه ..

ثم أنك وضعت هذا السطر بعد أن قمت بإفراغ المتغير (serveurnumber ) من قيمته من خلال الكود :
كود :
Dim serveurnumber As String = ""

بالتالي فإنه دوماً سيختار النتيجة  ("server10")
ومع ذلك هو لا فأئدة منه، لأنك بعد استخدام قيمته لم تستخدم هذه القيمة 
فالمتغير الذي استخدمته لتشغيل المشغل به قمت بتعبئة قيمته قبل الاستبدال أصلاً ولا يتعلق بالمتغير ولم يعد يتعلق بالقيمة الجديدة له ..

بالتالي يكون مع التوضيح :
كود :
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
   ' تعرف متغير وتعبئته برابط
   Dim URL As String = "https://server13.mp3quran.net/basit_mjwd/002.mp3"
   ' تعريف متغير وتبئته بالرابط السابق بعد أن تم استبدال جزء منه بجزء آخر وتفريغ جزء آخر وهو السيرفر
   Dim URL1 As String = URL.Replace("server13", serveurnumber).Replace("basit_mjwd", "minsh")
   'استبدال اسم السيرفر ولكن المتغير فارغ بالتالي سيختار حالة عدم التحقق أي السيرفر9
   serveurnumber = If(serveurnumber = "server8", "server7", "server10")
   'تشغيل المشغل بالرابط  والذي قيمتهي هي
   ' "https://.mp3quran.net/minsh/002.mp3"
   AxWindowsMediaPlayer1.URL = URL1


End Sub
قال صلى الله عليه وسلم: 
«كلمتان خفيفتان على اللسان 
ثقيلتان في الميزان،حبيبتان إلى الرحمن: 
سبحان الله وبحمده، سبحان الله العظيم».
الرد }}}
تم الشكر بواسطة: asmarsou , سعود , ابو روضة
#5
(15-02-23, 07:15 PM)Taha Okla كتب : توضيح (تصحيح مفهوم ) لهذا الكود :
كود :
serveurnumber = If(serveurnumber = "server8", "server7", "server10")

هذا يعني إذا كان المتغير  (serveurnumber) يساوي السيرفر ("server8")  قم يايتبداله بـ ("server7")  وإذا كان لا يساويه استبدله بـ ("server10")
فالعمليةو ليست تتالي أو تحقق من شغل السيرفر فيشغل عليه وإن لم يجد فيشغل على الذي يليه ..

ثم أنك وضعت هذا السطر بعد أن قمت بإفراغ المتغير (serveurnumber ) من قيمته من خلال الكود :
كود :
Dim serveurnumber As String = ""

بالتالي فإنه دوماً سيختار النتيجة  ("server10")
ومع ذلك هو لا فأئدة منه، لأنك بعد استخدام قيمته لم تستخدم هذه القيمة 
فالمتغير الذي استخدمته لتشغيل المشغل به قمت بتعبئة قيمته قبل الاستبدال أصلاً ولا يتعلق بالمتغير ولم يعد يتعلق بالقيمة الجديدة له ..

بالتالي يكون مع التوضيح :
كود :
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
   ' تعرف متغير وتعبئته برابط
   Dim URL As String = "https://server13.mp3quran.net/basit_mjwd/002.mp3"
   ' تعريف متغير وتبئته بالرابط السابق بعد أن تم استبدال جزء منه بجزء آخر وتفريغ جزء آخر وهو السيرفر
   Dim URL1 As String = URL.Replace("server13", serveurnumber).Replace("basit_mjwd", "minsh")
   'استبدال اسم السيرفر ولكن المتغير فارغ بالتالي سيختار حالة عدم التحقق أي السيرفر9
   serveurnumber = If(serveurnumber = "server8", "server7", "server10")
   'تشغيل المشغل بالرابط  والذي قيمتهي هي
   ' "https://.mp3quran.net/minsh/002.mp3"
   AxWindowsMediaPlayer1.URL = URL1


End Sub
الاشكال هو كيفية اضافة عناصر اخرى لهذا السطر
كود :
serveurnumber = If(serveurnumber = "server8", "server7", "server10")
ليصبح مثلا كالتالي
كود :
serveurnumber = If(serveurnumber = "server8", "server7", "server10", "server12",server13,server11)
ترتيب ارقام ال server ليس مهم المهم هنا اضافة اكثر من ثلاث عناصر لتلك المجموعة
اما serveurnumber=""  لتعريف المتغير النصي بذاك الاسم فلو جذف لظهرت احطاء بالكود
الرد }}}
تم الشكر بواسطة: سعود , سعود , ابو روضة
#6
أكثر شيء ممكن أفيدك فيه هو :

هذا الكود لا يعني اذا ما حصل السيرفر الأول شغال بيجرب الثاني، واذا ما حصل الثاني بيجرب الثالث وهكذا .

هذا جملة شرطية نتيجتها تنفيذ واحد فقط سواء السيرفر شغال ولا مو شغال..
قال صلى الله عليه وسلم: 
«كلمتان خفيفتان على اللسان 
ثقيلتان في الميزان،حبيبتان إلى الرحمن: 
سبحان الله وبحمده، سبحان الله العظيم».
الرد }}}
تم الشكر بواسطة: asmarsou , سعود
#7
اكيد كلكم يعرف يمكننا صياغة كود يلبي المطلوب .
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
الرد }}}
تم الشكر بواسطة: Taha Okla , asmarsou
#8
(18-02-23, 10:34 PM)سعود كتب : اكيد كلكم يعرف يمكننا صياغة كود يلبي المطلوب .
هذا مثال لاحد الحلول الممكنة
PHP كود :
Public Class Form1
    Dim 
list As New List(Of String)({"server8""server7""server10""server12""server13""server11"})
 
   Dim serveurnumber As String ""
 
   Private Sub Button1_Click(sender As ObjectAs EventArgsHandles Button1.Click
        Dim URL 
As String "https://server13.mp3quran.net/basit_mjwd/002.mp3"
 
       Dim URL1 As String URL.Replace("server13"serveurnumber).Replace("basit_mjwd""minsh")
 
       Timer1.Start()
 
       AxWindowsMediaPlayer1.URL URL1
    End Sub

    Private Sub Timer1_Tick
(sender As ObjectAs EventArgsHandles Timer1.Tick
        Static idx 
As Integer 0
        If idx 
< list.Count 1 Then
            idx 
+= 1
            serveurnumber 
= list(idx)
 
       Else
            idx 
0
        End 
If
 
       If Timer1.Enabled True And AxWindowsMediaPlayer1.playState WMPLib.WMPPlayState.wmppsReady Then
            Button1
.PerformClick()
 
       ElseIf Timer1.Enabled True And AxWindowsMediaPlayer1.playState WMPLib.WMPPlayState.wmppsPlaying Then
            Timer1
.Stop()
 
       End If
 
   End Sub
End 
Class 
كما يمكن وكحل آخر استعمال راندوم بواسطة مؤقت الاخذ عنصر واحد من السلسلة النصية (list)
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  ممكن ايضاح اكثر لـ continu for justforit 6 315 05-11-25, 12:10 AM
آخر رد: justforit
  كيفية منع ظهور الأخطاء من إعدادات البيسيك mmaalmesry 2 847 29-08-25, 10:30 AM
آخر رد: mmaalmesry
  كيفية جلب أسماء الأعمدة بجدول من جداول sql heem1986 2 745 17-08-25, 09:15 PM
آخر رد: heem1986
  كيفية حفظ إعدادات البرنامج بحيث لا تتغير أحمد إبراهيم سعد 4 3,001 06-08-25, 06:34 PM
آخر رد: Taha Okla
  مساعدة في كيفية ترحيل البيانات من داتا قريدفيو إلى داتا قريدفيو في فيجوال بيسك ahmedfa71 13 2,217 09-07-25, 11:24 PM
آخر رد: أبو خالد الشكري
Question [VB.NET] هناك سؤال يهم كل مبرمج الماذا برنامجك يظهر على بعض الشاشات اكثر دقه بشكل مصغر ومشوه Microformt 0 447 01-02-25, 03:48 PM
آخر رد: Microformt
  كيفية احتساب الفرق بين تاريخين بناء على عدد معين مصمم هاوي 2 548 15-01-25, 02:02 PM
آخر رد: مصمم هاوي
  كيفية التعامل مع inputbox في فيجوال ستوديو أسامة حسين 4 3,499 14-01-25, 02:04 AM
آخر رد: أبو خالد الشكري
  اضافة لون للالوان في التاكست بكس أحمد فتح الرحمن 4 444 08-01-25, 04:05 PM
آخر رد: أحمد فتح الرحمن
  اضافة ايام للتاريخ العيدروس 2 371 07-01-25, 02:06 AM
آخر رد: العيدروس

التنقل السريع :


يقوم بقرائة الموضوع: