السلام عليكم
ساعدوني بكود للبيانات المدخلة في مربع النص تكون على قد مربع النص
يعني ما تزيد الكتابة عن مربع النص
والسلام عليكم
السلام عليكم
ساعدوني بكود للبيانات المدخلة في مربع النص تكون على قد مربع النص
يعني ما تزيد الكتابة عن مربع النص
والسلام عليكم
في خاصية من خصائص Text اسمها MaxLenght
اكتب بداخلها عدد الحروف التي تريد ان تكتب في التيكس
اخي HnHn شكراً لك
اعرف الطريقة هذه لكن المقصود هو البيانات على قد مربع النص يعني لا يسمح ان يتجاور مربع النص اما ان تنقص الحروف فلا مانع.
---------------------------
فلو كتبت عدد الحروف تكون ملخبطه شوي يعني:
لو افترضنا انك كتبت = ففففففففففففففففف
ولو افترضنا انك كتبت =سياره مرسيدس
حروف الفاء= 17 حرف
الحروف الثانيه للسيارة = 12 حرف
لكن الحجم نفس الحجم في مربع النص من حروف الفاء أو كتابة سياره مرسيدس
---------------------
اخواني ارجو انكم فهمتو المقصود من هذه الحركه
السلام عليكم
ممكن اخى foxsy تستخدم هذه الطريقه ايضا
Private Sub Text1_KeyPress(KeyAscii As Integer) Dim i As Integer Dim a As String i = Len(Text1.Text) a = Text1.Text 'مربع النص سوف يقبل عشر حروف فقط If i = 10 Then 'غلق مربع النص و عدم السماح بالكتابه Text1.Locked = True End If 'فتح مربع النص فى حاله الرجوع للخلف حرف Select Case KeyAscii Case 8: If Text1.Locked = True Then Text1.Text = Left(Text1, Len(Text1) - 1) Text1.Locked = False End If End Select End Sub
اى انت بتحدد عدد الحروف المسموح ادخالها فى مربع النص و عند وصول مربع النص لعدد الحروف المحدده يغلق و لا يستقبل اى حروف اخرى سوى الرجوع للخلف
شكراً اخي half angel
فكره ممتازه لكن تودي نفس الحل لاخينا HnHn
اما المقصود فهو مربع النص وليس عدد الحروف لاني ذكرت ان عدد الحروف لا يجدي فلو رجعت لمثالي السابق لوجدت المشكله في الحروف العربية ممكن نستخدم مثالك ومثال اخونا HnHn للحروف الانجليزيه لانها مفصوله عن بعض
اما الحروف العربية فلا يمكن وضعها بعدد الحروف
لو افترضنا انك كتبت = محمد احمد على
عددها 13 حرف . وتجاوزت حدود مربع النص (يعني بعض الكلمات لا تشاهد) ومع هذا بقي لك حرفان .
ولو افترضنا انك كتبت =الله اكبر كبيرا
عددها 15 حرف مع انها تكون اصغر في مربع النص أما الاول فيكون قد تجاوز حدود مربع النص.
توضيح :
مربع نص لو حددنا له عدد الحروف = 15 حرف فقد يتجاوز المربع بكلمة اخرى.
طريقتك ممكن تعدلها لي واكون شاكر لك بطريقة انه اذا امتلاء مربع النص فنستخدم الغلق لمربع النص يعني لا يمكن تجاوزه لانه امتلى واعطا Locked.
وشكرأ مره اخرى
انا فهم قصدك جيدا
هذه المشكلة تحدث لأن مساحة الحروف تختلف من حرف الى حرف بمعني
ان حرف ( أ ) مثلا انظر اخذ قد ايه من المساحة مساحة لا تذكر بينما حرف ( ب ) مثلا انظر اخذ كم من المساحة
بالطبع اخذ اضعاف اضعاف المساحة اللتي اخذها حرف ( أ ) فهذه هي المشكلة ولم اجد حل لمشكلتك او دع الأصدقاء في هذا المنتدى الجميل المحاولة ربما يكون لها حل
انا عندي حل مؤقت لهذه المشكلة من الممكن ان تعجبك ربما
الحل هو ان لا تجعل المستخدم ان يأخذ باله او يعرف حجم مربع او طول المربع النصي قد ايه
بمعنى انه سوف يكتب على الهواء دون ان يرى حدود بداية ونهايا المربع
وهذا بعمل الأتي
قم بتحديد المربع النصي
تعالى في جدول الخصائص
عند الخاصية ( Appearance ) خليها ( Flat ) بدلا من ( 3D )
عند الخاصية ( BackColor ) خليها ( menu bar )
عند الخاصية ( BorderStyle ) خليها ( None )
وبكدة لا يرى المستخدم ان يرى حدود المربع
قم بتحديد عدد الحروف المرغوب فيها من خاصية MaxLength
وشكرا
شوف هل هذا الحل عجبك ولا لأ ؟؟
تحياتي لك
Mohamed Ali Salim
0.1..0...4....7.....6......2.......7........4.........8
نعم هذا هو المقصود اخي MohamedAliSalim في شرحك الاول .
فكرتك جيده
لكن ايهام المستخدم صعب شوي . ليش ؟ لان المستخدم راح يكتب فيه واذا كتب فيه وتعدى المساحة للنص راح يسويلي برنامج غير ناجح بأضهار البيانات .
مربع النص تقدر تقول صغير نسبياً يعني يمكن يكون 10 حروف باللغة الانجليزيه او عشرة ارقام من الصفر الى التسعه .
وانا اريده باللغة العربية وهناء تكمن المشكله.
يعني لازم اتعامل مع مربع النص شخصياً بالكود ، ان احدد له المساحة المطلوبه ولا يتعدها .
وان لا اتعامل مع خاصيه MaxLength لانها كما قلت لا تنجح في اللغة العربية.
اكرر شكري لك اخي MohamedAliSalim لتجاوبك وان شاء الله يساعدوننا بقية الاخوان بالمنتدى لايجاد الكود المناسب والفكرة العبقرية في الاستنتاج .
يعني نقول بالكود لمربع النص حدك هو حدك بالكتابة واذا امتلئت اعط المربع Locked
يا الله يا اخوان ورونا الابداع .
هذا الموضوع مغلق.