چگونگی تایپ فقط عدد در تکس باکس

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • میثم مقدم نیا

    • 2017/03/23
    • 558
    • 41.00

    آموزشی چگونگی تایپ فقط عدد در تکس باکس

    برای این کافی است که در قسمت کدینگ تکس باکس کد زیر را وارد کنید
    خواهید دید که بغییر از عدد چیز دیگری تایپ نمیشود
    کد PHP:
    Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
        If 
    KeyAscii Asc("9") Or KeyAscii Asc("0"Then
            
    If KeyAscii Asc("-"Then
                
    If InStr(1Me.TextBox1.Text"-") > Or _
                   Me
    .TextBox1.SelStart 0 Then KeyAscii 0
            
    ElseIf KeyAscii Asc("."Then
                
    If InStr(1Me.TextBox1.Text".") > 0 Then KeyAscii 0
            
    Else
                
    KeyAscii 0
            End 
    If
        
    End If
    End Sub 
    [HR][SIZE=5][COLOR="#0000FF"][FONT=Times New Roman][B] در سرزمینی کہ نتوان مردانہ زیست ، مردانہ مردن بهتر از این زندگیست [/B][/FONT][/COLOR][/SIZE][/HR]
  • كامران

    • 2016/06/29
    • 147
    • 41.00

    #2
    نوشته اصلی توسط mmn1000
    برای این کافی است که در قسمت کدینگ تکس باکس کد زیر را وارد کنید
    خواهید دید که بغییر از عدد چیز دیگری تایپ نمیشود
    ممنون فقط یه مسئله من تو یه فایل 16 textbox دارم که همه شون هم این شرط رو لازم دارن ولی اگه بخوام دونه دونه کد رو برای همه شون بنویسم وقت گیره آیا امکانش هست با یه حلقه کد رو بنویسیم؟

    کامنت

    • Amir Ghasemiyan

      • 2013/09/20
      • 4599
      • 100.00

      #3
      نوشته اصلی توسط كامران
      ممنون فقط یه مسئله من تو یه فایل 16 textbox دارم که همه شون هم این شرط رو لازم دارن ولی اگه بخوام دونه دونه کد رو برای همه شون بنویسم وقت گیره آیا امکانش هست با یه حلقه کد رو بنویسیم؟

      شما ميتونيد يك فانكشن تعريف كنيد و كدهايي كه دوستمون گفتن رو اونجا قرار بديد. به اين كدها توجه كنيد:

      کد:
      Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
          OnlyNumber KeyAscii, Me.TextBox1
      End Sub
      
      Private Sub TextBox2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
          OnlyNumber KeyAscii, Me.TextBox2
      End Sub
      
      Function OnlyNumber(key As MSForms.ReturnInteger, tb As MSForms.TextBox)
          If key > Asc("9") Or key < Asc("0") Then
              If key = Asc("-") Then
                  If InStr(1, tb.Text, "-") > 0 Or _
                     tb.SelStart > 0 Then key = 0
              ElseIf key = Asc(".") Then
                  If InStr(1, tb.Text, ".") > 0 Then key = 0
              Else
                  key = 0
              End If
          End If
      End Function

      کامنت

      • كامران

        • 2016/06/29
        • 147
        • 41.00

        #4
        نوشته اصلی توسط Amir Ghasemiyan

        شما ميتونيد يك فانكشن تعريف كنيد و كدهايي كه دوستمون گفتن رو اونجا قرار بديد. به اين كدها توجه كنيد:

        کد:
        Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
            OnlyNumber KeyAscii, Me.TextBox1
        End Sub
        
        Private Sub TextBox2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
            OnlyNumber KeyAscii, Me.TextBox2
        End Sub
        
        Function OnlyNumber(key As MSForms.ReturnInteger, tb As MSForms.TextBox)
            If key > Asc("9") Or key < Asc("0") Then
                If key = Asc("-") Then
                    If InStr(1, tb.Text, "-") > 0 Or _
                       tb.SelStart > 0 Then key = 0
                ElseIf key = Asc(".") Then
                    If InStr(1, tb.Text, ".") > 0 Then key = 0
                Else
                    key = 0
                End If
            End If
        End Function

        ممنون فقط سوال من یه ذره فرق داشت چیزی که من سعی دارم بپرسم اینه که چطور میشه یک کد ثابت رو برای چندین textbox یا label یا combobox بدون احتیاج به تایپ تکراری برای هر کدام (هر چند تا که باشد ) با حلقه نوشت

        بعنوان مثال امکان داره نیاز باشه توی باز کردن یک فرم ابتدا هر مثلآ 30 textbox مقادیرش خالی بشه

        کامنت

        • Amir Ghasemiyan

          • 2013/09/20
          • 4599
          • 100.00

          #5
          نوشته اصلی توسط كامران
          ممنون فقط سوال من یه ذره فرق داشت چیزی که من سعی دارم بپرسم اینه که چطور میشه یک کد ثابت رو برای چندین textbox یا label یا combobox بدون احتیاج به تایپ تکراری برای هر کدام (هر چند تا که باشد ) با حلقه نوشت

          بعنوان مثال امکان داره نیاز باشه توی باز کردن یک فرم ابتدا هر مثلآ 30 textbox مقادیرش خالی بشه
          بعيد ميدونم همچين امكاني وجود داشته باشه اما بررسي ميكنم اگر راهي پيدا كردم همينجا به اشتراك ميذارم

          کامنت

          چند لحظه..