تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] مشكلة
#1
السلام عليكم

 حاليا استخدم فيجوال بيسك دوت نت 2008 مع SQL

المشكلة : اريد ان اظهر (ارقام/احرف/ارقام )... لكن دائما يغير الى (ارقام/ارقام/احرف) ... اتصور المشكلة في Setting لان في DB لاتوجد مشكلة يخزن
( ارقام/احرف/ارقام ) لكنه يعرض (ارقام/ارقام/احرف)
الرد }}}
تم الشكر بواسطة:
#2
هذة المشكلة بسبب العلامة "/" بالتحديد مع الحروف العربية

مثال : المتوقع  (    أ هـ س/1234/م ع     )
         الحقيقة (   أ هـ س/م ع/1234      )



لو إستخدمة العلامة المعكوسة "\" لن تجد مشكلة

الحل :
إما أن تضع مسافة قبل وبعد العلامة  "/" 
لتصبح هكذا : (    أ هـ س / 1234 / م ع     )


أو أن تستخدم ( sample ) مختلف من نافذة :
   
وعند الضغط على لوحة المفاتيح قم بإستبدال العلامة الأصلية بالعلامة التي إخترتها من النافذة, وستظهر في مربع النص بشكل عادي ,
الرد }}}
تم الشكر بواسطة: elgokr , ليل الصيف
#3
وعليكم اسلام ورحمة الله وبركاته

مرحباً اخى ليل الصيف
فى البداية الرجاء الانتباه الى اسم عنوان الموضوع
بحيث ان يكون عنوان الموضوع هو وصف المشكلة تجنباً لعدم حذف الموضوع للمخالفة

بخصوص المشكلة التى لديك
هو لم يوم بتحويل ليعرض ارقام/ارقام/ نص
ولكن بسبب ان النص عربي فاصبح الرؤية للشكل عبارة عن ارقام/ارقام/نص

لتوضح الصورة اكثر انظر الى هذا الكود يمكنك تطبيقه فى اى زر 
كود :
       Dim dd As String = "123/اوك/654"
       Dim kk As String = "123/ok/987"
       MsgBox(dd)
       MsgBox(kk)

ستلاحظ من وضع وشكل الكود انه يعرض كما انت تقول كا مشكلة
ولكن فى الحقيقة اذا قمت بنسخ النص وقمت بلصقها فى اى مكان وليكن Notepad
ستجد انه ايضاً رقم/نص/رقم

طيب الان كيف يتم حل المشكلة حتى يعرض الناتج بالصورة الطبيعية وهوو رقم/نص/رقم
كل ما عليك فعله هو التالى 
ضع هذا الـ Function
كود :
   Function Right_Left(ByRef Tools As Control, ByVal Text As String) As String
       Dim ArabicKey As String = "ذدجحخهعغفقثصضطكمنتالبيسشظزوةىرؤءئّ؛إًٌَُ،ـأٍِ؟آْ"
       For ii As Integer = 0 To ArabicKey.Length - 1
           If Text.Contains(ArabicKey(ii)) Then
               Tools.RightToLeft = RightToLeft.Yes
               Exit For
           Else
               Tools.RightToLeft = RightToLeft.No
           End If
       Next
       Tools.Text = Text
       Return Tools.Focus
   End Function

ثم تعال نعيد امر الكود الذى كان بالاعلى بطريقة ايجابية الصورة ولاحظ ان اليمة لم تتغير بعد
كود :
       Dim ar = "123\اوك\456"
       Dim en = "123\ok\456"

       Right_Left(TextBox1, ar)
       MsgBox(en)

ستلاحظ ان عند احتواء القيمة الى نص عربي سيقوم بتوجيه الـ TextBox من اليمين الى اليسار
وبكده تكون حليت مشكلة قراءة الشكل من رقم/رقم/نص ليصبح بطبيعته وهو رقم/نص/رقم

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة:



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


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