تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
زيادة رقم بشروط خاصة
#1
لدي سترينج عبارة عن :
1.0.0.0
ما اريده هو في كل مرة اضغط علي الزر يقوم بتزويد رقم عليهم مثل
1.0.0.1
1.0.0.2
1.0.0.3
وهكذا لحد ما يوصل لرقم 9 مثل
1.0.0.9
يبقا كدا عندما اضغط الزر يقوم بزيادة الرقم التالي مثل
1.0.0.9
يصبح
1.0.1.0
وهكذا
يعني في كل مرة يزود رقم لحد ما يوصل لرقم
9.9.9.9
طبعا الزيادة تتم فقط عند الضغط علي الزر
ما هو افضل كود لفعل ذلك
لان بشروط if هيكون كود طويل ومعقد لذا ابحث عن طريقة اسهل وافضل
الرد }}}
تم الشكر بواسطة:
#2
افضل طريقة واسهلها وقد تكون الابسط فى التعامل
هو فى حدث الزر تقوم بالتالى
اولاً حذف . بين الارقام ليصبح الرقم 1000
ثانياً ستقوم بعملة الجمع 1000+1
ثالثاً استرجاع . مجدداً ليصبح الناتج 1001
الرد }}}
#3
السلام عليكم ورحمة الله وبركاته
اخي الكريم هذه بطريقة الـ If وهي ليست معقدة كما تقول  وقد جربتها حتى الرقم 9999 وبعدها يتم التصفير من جديد 
الكود عبارة عن جمل if متداخلة
كود :
  Dim aa As Integer = 0
   Dim bb As Integer = 0
   Dim cc As Integer = 0
   Dim dd As Integer = 1
   Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       aa += 1
       If aa = 10 Then
           aa = 0
           bb += 1
           If bb = 10 Then
               bb = 0
               cc += 1
               If cc = 10 Then
                   cc = 0
                   dd += 1
                   If dd = 10 Then
                       dd = 0 ' هنا يتم التصفير والاعادة من جديد
                   Else
                       dd += 1
                   End If
               End If
           End If
       End If
       TextBox1.Text = dd & "." & cc & "." & bb & "." & aa
   End Sub
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد }}}
#4
أعتقد أن الكود الأسهل هو :

كود :
    Dim S As Single
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        S += 0.001
        If S >= 10 Then S = 0.000
        TextBox1.Text = S.ToString("0.0@0@0").Replace("@", ".")
    End Sub
الرد }}}
#5
بارك الله فيك اخ سامي 
فعلا اسهل وطريقة ابداعية حقا
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد }}}
تم الشكر بواسطة: alshandodi , ابو روضة , سامي محمد
#6
(27-06-20, 12:31 PM)ابراهيم ايبو كتب : السلام عليكم ورحمة الله وبركاته
اخي الكريم هذه بطريقة الـ If وهي ليست معقدة كما تقول  وقد جربتها حتى الرقم 9999 وبعدها يتم التصفير من جديد 
الكود عبارة عن جمل if متداخلة
كود :
  Dim aa As Integer = 0
   Dim bb As Integer = 0
   Dim cc As Integer = 0
   Dim dd As Integer = 1
   Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       aa += 1
       If aa = 10 Then
           aa = 0
           bb += 1
           If bb = 10 Then
               bb = 0
               cc += 1
               If cc = 10 Then
                   cc = 0
                   dd += 1
                   If dd = 10 Then
                       dd = 0 ' هنا يتم التصفير والاعادة من جديد
                   Else
                       dd += 1
                   End If
               End If
           End If
       End If
       TextBox1.Text = dd & "." & cc & "." & bb & "." & aa
   End Sub

ممتاز يعمل بنجاح ولكن كنت اتمني الابتعاد عن شروط if اعتقدت انه يوجد طريقة اسهل من الشروط ولكن تسلم ايدك علي كل شئ

(27-06-20, 12:53 PM)سامي محمد كتب : أعتقد أن الكود الأسهل هو :

كود :
    Dim S As Single
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        S += 0.001
        If S >= 10 Then S = 0.000
        TextBox1.Text = S.ToString("0.0@0@0").Replace("@", ".")
    End Sub

ممتاز جدا ولكن كيف هيتم ادخل الرقم 1.0.0.0 ل Single
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , ابراهيم ايبو
#7
لايمكن استخدام اكثر من نقطة واحدة في المتغيرات العشرية ..... ولكن أحفظها كقيمة نصية String
الرد }}}
#8
(02-07-20, 01:02 AM)سامي محمد كتب : لايمكن استخدام اكثر من نقطة واحدة في المتغيرات العشرية ..... ولكن أحفظها كقيمة نصية String

ممكن مثال علي
dim x as string = "1.0.0.1"
الرد }}}
تم الشكر بواسطة:
#9
تفضل اخوي

الكود التالي يحتوي على طريقتين لعمل النتيجة التي تريدها 

كود :
    Dim myMaxNum As Integer = 0

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click

        myMaxNum += 1
        Label1.Text = Format(myMaxNum, "0\,0\,0\,0")

        ' او يمكنك استخدام السطر التالي
        'فقط قم يتعليق السطر قبل السابق

        'Label1.Text = myMaxNum.ToString("0\,0\,0\,0")


    End Sub

الرد }}}


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  الحذف للسجل بشروط معينة محمد خيري 4 369 05-01-24, 04:46 AM
آخر رد: محمد خيري
  عملية حسابية خاصة محمد خيري 6 521 22-08-23, 09:09 AM
آخر رد: مصمم هاوي
  اريد التعديل على كود اذا كان القيمة المدخلة مكررة بDataGridView يتم فقط زيادة العدد moh61 6 841 26-07-23, 10:41 AM
آخر رد: تركي الحلواني
  طريقة حذف حرف زيادة من مربع النص علاء الكبابي 2 571 19-06-23, 05:08 PM
آخر رد: Taha Okla
  زيادة كمية منتج Osama NY 3 596 12-04-23, 03:40 PM
آخر رد: مصمم هاوي
  [VB.NET] زيادة عرض الفورم من الاتجاهين عماد سلمان منذر 1 489 04-10-22, 03:16 PM
آخر رد: Taha Okla
Question كيفية زيادة وانقاص الارقام العشرية في C# و VB.NET silverlord 4 1,372 29-05-22, 02:49 AM
آخر رد: silverlord
  زيادة عدد من السنوات لحقل تاريخ atefkhalf2004 13 2,437 21-11-21, 10:42 PM
آخر رد: asemshahen5
  [سؤال] زيادة رقم واحد بعد اكبر رقم في العمود غدير الصليحي 8 1,766 17-11-21, 09:37 PM
آخر رد: غدير الصليحي
  [VB.NET] فصل جزء من الرقم بطريقة خاصة kaleed198 2 990 22-09-21, 11:59 PM
آخر رد: kaleed198

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


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم