تقييم الموضوع :
  • 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] طريقة تفعيل الشاشة الصغيرة في جهاز الكاشير MOHAMMED ALZWI 0 254 25-09-25, 02:17 PM
آخر رد: MOHAMMED ALZWI
  [سؤال] طريقة توسيط النص داخل اداة comboBox سمير1404 7 3,858 24-08-25, 01:01 PM
آخر رد: أبو خالد الشكري
  مساعدة في طريقة تحميل الفيديوهات المخزنة في قاعدة البيانات foad8920 0 660 24-04-25, 12:58 PM
آخر رد: foad8920
  مساعدة في تحويل الكود من فيجوال بسيك 6 الى فيجوال دوت نت سيد أحمد 5 820 23-03-25, 10:54 PM
آخر رد: سيد أحمد
  طريقة طباعة ملف pdf بقاعدة بيانات sql heem1986 0 519 25-02-25, 09:31 AM
آخر رد: heem1986
  كيف يمكن تحويل ملف تنفيذى الى فيجوال بيسك 2010 walkady 2 781 07-02-25, 07:57 PM
آخر رد: الورد2
  طريقه تحويل اى قاعده بيانات الى ملف dll فى المشروع خالد كامل1 1 635 31-01-25, 10:21 PM
آخر رد: Kamil
  تحويل معادلة اكسل أحمد فتح الرحمن 1 478 29-01-25, 11:09 PM
آخر رد: أحمد فتح الرحمن
  طريقة حفظ نسخة أحيتاطية من قاعدة بيانات sql محلية heem1986 2 496 01-01-25, 03:56 PM
آخر رد: heem1986
  طريقة جلب نوع ملفات معينة heem1986 3 482 31-12-24, 11:32 PM
آخر رد: aljzazy

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


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