تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
طريقة تحويل الأرقام إلى حروف
#1
السلام عليكم

لمن يقدر يساعدني في الاتي:

عندي textbox1 يتم ادخال أرقام مثل 7500

اريد اجعل قيمة textbox2 تساوي الأرقام بالحروف = سبعة الالف وخمسمائة ريال فقط

حيث أن الكود داخل حدث changed لل textbox1


الله يعطيكم العافية
وشكراً
الرد }}}
تم الشكر بواسطة:
#2
و عليكم السلام و رحمة الله و بركاته

راجع الكود في هذه المشاركة
قال صلى الله عليه وسلم: 
«كلمتان خفيفتان على اللسان 
ثقيلتان في الميزان،حبيبتان إلى الرحمن: 
سبحان الله وبحمده، سبحان الله العظيم».
الرد }}}
تم الشكر بواسطة:
#3
ذلك في حدث TextChanged لـ TextBox1:

vb
Copy code
Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
' احصل على القيمة المدخلة في TextBox1
Dim inputValue As String = TextBox1.Text.Trim()

' تحويل الرقم إلى كلمة
Dim wordValue As String = ConvertNumberToWords(inputValue)

' عرض الناتج في TextBox2
TextBox2.Text = wordValue
End Sub

Private Function ConvertNumberToWords(number As String) As String
' تحويل الرقم إلى كلمة
' يمكنك استخدام أي خوارزمية تحويل رقم إلى كلمة تفضل بها
' يمكنك البحث عن خوارزميات متوفرة على الإنترنت أو كتابة خاصة بك

' هنا نستخدم خوارزمية بسيطة لأغراض التوضيح
Dim units() As String = {"", "واحد", "اثنان", "ثلاثة", "أربعة", "خمسة", "ستة", "سبعة", "ثمانية", "تسعة"}
Dim teens() As String = {"عشرة", "إحدى عشر", "اثنا عشر", "ثلاثة عشر", "أربعة عشر", "خمسة عشر", "ستة عشر", "سبعة عشر", "ثمانية عشر", "تسعة عشر"}
Dim tens() As String = {"", "عشرون", "ثلاثون", "أربعون", "خمسون", "ستون", "سبعون", "ثمانون", "تسعون"}
Dim hundreds() As String = {"", "مئة", "مئتان", "ثلاثمئة", "أربعمئة", "خمسمئة", "ستمئة", "سبعمئة", "ثمانمئة", "تسعمئة"}

' إزالة الأصفار الزائدة من الرقم
number = number.TrimStart("0"c)

' التحقق من أن الرقم ليس فارغًا
If String.IsNullOrEmpty(number) Then
Return "صفر"
End If

' التحقق من صحة الرقم
Dim numericValue As Integer
If Not Integer.TryParse(number, numericValue) Then
Return "خطأ في الرقم"
End If

' حالة الرقم صفر
If numericValue = 0 Then
Return "صفر"
End If

' تحويل الرقم إلى كلمة
Dim words As New StringBuilder()

' تحويل الجزء الثلاثي إلى كلمة
Dim triplets() As Integer = {0, 0, 0}
Dim tripletCounter As Integer = 0

Do While numericValue > 0
triplets(tripletCounter) = numericValue Mod 1000
numericValue \= 1000
tripletCounter += 1
Loop

For i As Integer = tripletCounter - 1 To 0 Step -1
Dim triplet As Integer = triplets(i)

If triplet > 0 Then
If words.Length > 0 Then
words.Append(" و ")
End If

If triplet >= 100 Then
words.Append(hundreds(triplet \ 100)).Append(" ")
triplet \= 100
End If

If triplet >= 10 AndAlso triplet <= 19 Then
words.Append(teens(triplet - 10))
Else
words.Append(tens(triplet \ 10)).Append(" ")
triplet \= 10

If triplet > 0 Then
words.Append(units(triplet))
End If
End If

If i > 0 Then
words.Append(" ").Append("ألف"c)
End If
End If
Next

Return words.ToString().Trim()
End Function
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [VB.NET] طريقة استدعاء مكتبة dll عبد الناصر موسى 3 1,472 10-04-24, 04:33 AM
آخر رد: emadahmed1995
  [VB.NET] طريقة التعلم بخطوات صحيحة للتعلم و المعرفة انمار الرواي 0 63 31-03-24, 08:23 PM
آخر رد: انمار الرواي
  محتاج طريقة لتنسيق نص الرسالة المرسلة إلى الواتس اب new_programer 2 208 04-03-24, 07:15 AM
آخر رد: new_programer
  خطوط تعريب الأرقام في كريستال ريبورت صالح عبدالله 4 294 16-02-24, 09:28 PM
آخر رد: صالح عبدالله
  طريقة اجراء نسخة احتياطية و استرجاعها ؟ Osama NY 2 474 07-02-24, 08:59 PM
آخر رد: Kamil
  [VB.NET] ارغب في كود إلزام المستخدم ادخال الأرقام محصور بعددين loay775 2 212 18-01-24, 05:02 PM
آخر رد: loay775
  [VB.NET] تحويل المشروع سطح المكتب للعمل على الويب Doby 3 383 13-01-24, 04:22 AM
آخر رد: dr.programming
  ماهي طريقة نقل محتويات checkedlistbox الى داتاقريدفيو صالح عبدالله 3 272 06-01-24, 03:20 PM
آخر رد: Kamil
  تحويل مشروع من c# الى فيجول بيسك Lathe1 4 732 05-01-24, 01:05 AM
آخر رد: HALIM ELEULMA
  [VB.NET] تحويل التاريخ بين أداتين تايم بيكر في نفس الفورم محمد العموري 1 292 29-12-23, 10:44 PM
آخر رد: Kamil

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


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