تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] عمل حاسبة بسيطة
#1
السلام عليكم ورحمة الله وبركاتة


لدي سؤال عن انشاء حاسبة بسيطة تقريبا انا قمت بكل شيء

بس عندي مشكلة وهيا منع المستخدم من كتابة عمليات متتالية مثلا

122++33--+55

يعني منع كتابة علامات جمع او طرح او ضرب او قسمة متتالية او مختلفة جعل التيكست تقبل علامة واحدة فقط

وايضا لا تقبل علامات اول العملية الحسابية بالتيكست.

-+5+5
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , asemshahen5
#2
بصراحة لا ادري كيفية  وضعية الازرار عندك لكن شوف الكود التالي هل يناسبك ام لا
PHP كود :
Private Function GetOp() As Boolean
        If TextBox1
.Text.Contains("+"Then Return True Else Return False
        If TextBox1
.Text.Contains("-"Then Return True Else Return False
        If TextBox1
.Text.Contains("*"Then Return True Else Return False
        If TextBox1
.Text.Contains(""Then Return True Else Return False
    End 
Function
 
   Private Sub Button1_Click(sender As System.ObjectAs System.EventArgsHandles Button1.ClickButton2.ClickButton3.ClickButton4.Click
        If GetOp
() = True Then Exit Sub
        TextBox1
.AppendText(sender.text)
 
   End Sub 

هل تقصد انه يتم ادخال الارقام من لوحة المفاتيح(الكيبورد)؟
الرد }}}
#3
(12-04-20, 05:52 PM)سعود كتب : بصراحة لا ادري كيفية  وضعية الازرار عندك لكن شوف الكود التالي هل يناسبك ام لا
PHP كود :
Private Function GetOp() As Boolean
        If TextBox1
.Text.Contains("+"Then Return True Else Return False
        If TextBox1
.Text.Contains("-"Then Return True Else Return False
        If TextBox1
.Text.Contains("*"Then Return True Else Return False
        If TextBox1
.Text.Contains(""Then Return True Else Return False
    End 
Function
 
   Private Sub Button1_Click(sender As System.ObjectAs System.EventArgsHandles Button1.ClickButton2.ClickButton3.ClickButton4.Click
        If GetOp
() = True Then Exit Sub
        TextBox1
.AppendText(sender.text)
 
   End Sub 

هل تقصد انه يتم ادخال الارقام من لوحة المفاتيح(الكيبورد)؟

الحدث ملوش علاقة بالازرار المفروض يكون موجود بحدث TextChanged

انا فهمت الكود بيتم ازاي

بس العمليات بتم بالكيبورد او الازرار عشان كدة عايز العملية تكون داخل التيكست الي بتظهر فيها العمليات بحدث TextChanged

عشان لو المستخدم استخدم البوتن او الكيبورد
الرد }}}
تم الشكر بواسطة: سعود , ابراهيم ايبو , asemshahen5
#4
إقتباس :انا فهمت الكود بيتم ازاي

بس العمليات بتم بالكيبورد او الازرار عشان كدة عايز العملية تكون داخل التيكست الي بتظهر فيها العمليات بحدث TextChanged

عشان لو المستخدم استخدم البوتن او الكيبورد
يعني انت تحتاج  اما حدث KeyPress او حدث  KeyDown
فقط 
اكيد تعرف الباقي باين من ردك
إقتباس :الحدث ملوش علاقة بالازرار المفروض يكون موجود بحدث TextChanged
الرد }}}
#5
الف شكر علي ردك

جزاك الله كل خير
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , asemshahen5
#6
السلام عليكم ورحمة الله وبركاته
تفضل اخي محمد هذا الكود في حدث KeyPress
سوف يمنع اضافة اكثر من اشارة للعمليات الحسابية يسمح بواحدة فقط بين كل رقمين
كود :
Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
       If TextBox1.Text.EndsWith("+") Or TextBox1.Text.EndsWith("-") Or TextBox1.Text.EndsWith("*") Or TextBox1.Text.EndsWith("/") Then
           If e.KeyChar = "+" Or e.KeyChar = "-" Or e.KeyChar = "*" Or e.KeyChar = "/" Then
               e.Handled = True
           End If
       End If
   End Sub
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد }}}
تم الشكر بواسطة: محمد اسماعيل , asemshahen5 , asemshahen5
#7
(12-04-20, 07:43 PM)ابراهيم ايبو كتب : السلام عليكم ورحمة الله وبركاته
تفضل اخي محمد هذا الكود في حدث KeyPress
سوف يمنع اضافة اكثر من اشارة للعمليات الحسابية يسمح بواحدة فقط بين كل رقمين
كود :
Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
       If TextBox1.Text.EndsWith("+") Or TextBox1.Text.EndsWith("-") Or TextBox1.Text.EndsWith("*") Or TextBox1.Text.EndsWith("/") Then
           If e.KeyChar = "+" Or e.KeyChar = "-" Or e.KeyChar = "*" Or e.KeyChar = "/" Then
               e.Handled = True
           End If
       End If
   End Sub

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

تم حل المشكلة بفضل الله

ومن الافادة اختلاف الحلول اشكرك علي ردك استاذ ابراهيم
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , asemshahen5


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  الة حاسبة ابو اسماعيل33 0 619 05-06-22, 01:47 AM
آخر رد: ابو اسماعيل33
  [كود] مطلوب كود يسحب معلومات بسيطة من موقع كورة مثلا؟ خالد يعقوب 1 1,112 25-07-21, 04:22 PM
آخر رد: aldery
  مطلوب مساعدة بسيطة في حل اشكالية العطر الرايق 0 1,080 07-06-20, 05:24 PM
آخر رد: العطر الرايق
Lightbulb [VB.NET] برنامج آلة حاسبة Doctor GME 6 1,857 24-05-20, 03:17 AM
آخر رد: atefkhalf2004
  جزئية بسيطة في الداتاسيت اريد ان اعرف كيف تتعاملون معها ابو محمد محمد محمد 4 1,545 16-05-20, 08:48 AM
آخر رد: عبدالله الدوسري
  سوال محتاج مساعدة بسيطة في كود برمجي العطر الرايق 2 1,449 10-05-20, 02:20 AM
آخر رد: العطر الرايق
  السلام عليكم لو سمحتم عندي مشكلة بسيطة في هذا الكود بانه لا ياخد في الكسر مثل في (ال HASSAN.NOWARHA 6 2,476 02-03-20, 01:39 AM
آخر رد: alsalamoni
  مساعدة بسيطة شباب salahalmasry 7 3,293 12-10-19, 02:52 AM
آخر رد: salahalmasry
  مساعدة بسيطة mohamedahmed1 0 1,078 15-08-19, 03:13 AM
آخر رد: mohamedahmed1
  [VB.NET] مشكله بسيطة في الكود التالي e-coder 1 1,417 17-07-19, 07:54 PM
آخر رد: الحازمي

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


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