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



عندما أحاول ترجمة كلمة (you) تتم بنجاح
ولكن مثلاً لو حاولت مع كلمة (your) فالبرنامج يترجم (you) ويترك r هكذا (rأنت)
أعرف أن الخلل فى طريقة replace  ولكنى لا أعرف طريقة أخرى
لأن البرنامج يفترض أن يترجم جمل كاملة وليست كلمات
وبالتالى يجب أن يبحث عن كل كلمة على حدة ويستبدلها داخل الجملة
البرنامج بالكامل فى المرفقات


الملفات المرفقة
.rar   Translator.rar (الحجم : 67.25 ك ب / التحميلات : 39)
الرد }}}
تم الشكر بواسطة: asemshahen5
#2
السلام عليكم ورحمة الله وبركاته
اخي الكريم هل الترجمة ستكون لكلمة واحد فقط في كل مرة ؟
ان كان كذلك فلا داع لكل هذ التعقيد
فقط جملة استعلام مثل البحث 
كود :
Private Sub BtnTranslate_Click(sender As Object, e As EventArgs) Handles BtnTranslate.Click
       Dim tbl As New DataTable
       Dim adp As New OleDbDataAdapter("SELECT * FROM [Translations] where English ='" & EnglishTextbox.Text & "'", cnn)
       adp.Fill(tbl)
       If tbl.Rows.Count > 0 Then
           ArabicTextbox.Text = tbl.Rows(0)(1)
       End If
   End Sub
اما اذا كانت الترجمة لجملة وفيها كلمات فالموضوع يختلف وليس لدي اي فكرة
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد }}}
تم الشكر بواسطة: asemshahen5 , محمد اسماعيل
#3
فقط استبدل كود For بهذا الكود
كود :
                       For Each row As DataRow In tbl.Rows
                           content = content.Replace(row.Item("English"), row.Item("Arabic"))
                       Next
يرجي الانتباه ان التحول هنا سيتم التعامل طبقاً للكتابة اذا كان حرفاً كبير او صغير
الرد }}}
#4
أخى ابراهيم ايبو
للأسف ما أريده هو ترجمة الجمل وإلا لكانت طريقتك المقترحة هى اختيارى

أخى kiki
لا يوجد أى فرق بين الكود الذى اقترحته والموجود بالفعل
يعطى نفس النتيجة عند التنفيذ
الرد }}}
تم الشكر بواسطة: asemshahen5
#5
يعطى ما تريده وليس نفس النتيجة
لان هنا هو يعتمد على التطبيق الكلى للكلمة اللى موجوده فى العمود الانجليزيى ليحوله للعربي
ويجب ان يكون متطابق كلياً للكتابة التى كتبت الا اذا كنت ستقوم بالاضافة لاكواد مثل تحول الحروف الكبيرة الى صغيرة والعكس وما شبه
الرد }}}
تم الشكر بواسطة: asemshahen5
#6
شكراً أخى لاهتمامك
أريد التطابق الكلى أيضاً مع الكلمة الموجودة فى textbox
لو راجعت الموضوع ونظرت للمثال الذى وضعته ستفهم مقصدى بسهولة
وللتوضيح قم بترجمة كلمة your كمثال وسترى النتيجة
الرد }}}
تم الشكر بواسطة: asemshahen5
#7
سيتبقي فقط وضع الجمل والكلمات فى قاعدة الباينات
ومن ثمي حتى لا تقوم باعادة ترتيب المدخلات بقاعدة البيانات من عدد الاحرف الاكبر للاقل
فقط تعال فى كود الاستعلام واضف له هذا
ORDER BY Len(English) DESC
بكده لما يعمل استبدال للكلمات سيقوم باستبدال كلمة your اولاً قبل ما يطبق استبدال you
الرد }}}
تم الشكر بواسطة: Doctor GME , عبد العزيز البسكري , asemshahen5
#8
فكرة جيدة وإضافة رائعة أخى
ولكن مازال هناك مشكلة صغيرة
لو كانت كلمة your مثلاً غير مسجلة بقاعدة البيانات وفقط you موجودة
سيحدث نفس الخطأ السابق
هل يمكن مثلاً وضع شرط أن يتعرف البرنامج على الكلمة أو حتى الجملة
فقط عندما يسبقها و يليها مسافة أو سطر جديد
وشكراً لمساعدتك
الرد }}}
تم الشكر بواسطة: asemshahen5
#9
(23-06-20, 01:19 AM)Doctor GME كتب : فكرة جيدة وإضافة رائعة أخى
ولكن مازال هناك مشكلة صغيرة
لو كانت كلمة your مثلاً غير مسجلة بقاعدة البيانات وفقط you موجودة
سيحدث نفس الخطأ السابق
هل يمكن مثلاً وضع شرط أن يتعرف البرنامج على الكلمة أو حتى الجملة
فقط عندما يسبقها و يليها مسافة أو سطر جديد
وشكراً لمساعدتك
بكل تاكيد يمكنك ذلك كل كا علك ان تعجل الكود بهذا الشكل
كود :
content = content.Replace(row.Item("English") & Space(1), row.Item("Arabic") & Space(1))
والامر الثاني حتى لا تجبر المستخدم ان ينهي الكتابة فى الكتابة بمسافة 
ان تجعل كود الزر بهذا الشكل
كود :
ArabicTextbox.Text = GetExactSubtitles(EnglishTextbox.Text & Space(1))
الرد }}}
تم الشكر بواسطة: Doctor GME , عبد العزيز البسكري , asemshahen5
#10
هذا هو الشكل النهائى
كود :
content = content.Replace(Space(1) & row.Item("English") & Space(1), Space(1) & row.Item("Arabic") & Space(1))

ويعمل بشكل جيد إذا كانت الكلمة أو الجملة يليها ويسبقها مسافة
ولكن إذا كان يسبقها أو يليها سطر جديد لا تعمل
حاولت مع هذه الصيغة:
كود :
content = content.Replace(Space(1) Or vbCrLf & row.Item("English") & Space(1) Or vbCrLf, Space(1) Or vbCrLf & row.Item("Arabic") & Space(1) Or vbCrLf)

ولكن تعطى خطأ:
Conversion from string to type long is not valid
الرد }}}
تم الشكر بواسطة: asemshahen5


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [مشروع] مشروع لاضافة رسم بيانى محتاج التدخل لاصلاحه dr.programming 0 223 09-11-25, 01:48 AM
آخر رد: dr.programming
  [VB.NET] مشروع للاستأناس EMADW 3 543 02-04-25, 04:20 PM
آخر رد: princelovelorn
  [VB.NET] اذا ممكن مشروع ادارة مدرسة بدر إشتية 4 8,543 08-02-25, 02:05 AM
آخر رد: الورد2
  [VB.NET] مساعدة في مشروع ZEEN4ZEEN 0 256 12-01-25, 06:03 PM
آخر رد: ZEEN4ZEEN
  مساعدة فى حفظ مشروع برنامج الى ضيغة apk م / وليد تيتو 1 375 03-11-24, 05:27 PM
آخر رد: Taha Okla
  مشروع اكمال ساعة المسجد اجر للجميع altoki939 0 291 30-10-24, 09:49 PM
آخر رد: altoki939
  [سؤال] افضل الطرق في تحزيم مشروع بقواعد SQL محمد العامر 5 573 23-10-24, 11:19 AM
آخر رد: محمد العامر
  [سؤال] عند بدأ مشروع جديد غير قادر على روئية الـForm1 ABDULLAH HASSAN 1 439 30-04-24, 12:22 AM
آخر رد: Jounior_P
  ممكن طريقه وتصميم مشروع بالفيجوال بيسك خالد كامل1 2 476 28-04-24, 02:56 AM
آخر رد: خالد كامل1
Big Grin [سؤال] مشروع الفيجوال بيسك ستوديو sad89891 4 2,184 10-04-24, 04:37 AM
آخر رد: emadahmed1995

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


يقوم بقرائة الموضوع: