منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[سؤال] هل يوجد margin داخلي للتكست بوكس ؟ - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [سؤال] هل يوجد margin داخلي للتكست بوكس ؟ (/showthread.php?tid=606)

الصفحات: 1 2


هل يوجد margin داخلي للتكست بوكس ؟ - kafi2030 - 19-10-13

بسم الله الرحمن الرحيم
السلام عليكم

عند البدء بالكتابة داخل التكست بوكس، تكون الكتابة ملاصقة تماما للحد الايمن للتكست بوكس

سؤالي :
هل يوجد Marging داخلي او مايسمى pading على ما اعتقد، بحيث يتاح المجال بابعاد الكتابة عن الحد الايمن للتكست بوكس عدة فراغات، من اجل سهولة القراءة

والف شكر


RE: هل يوجد margin داخلي للتكست بوكس ؟ - kafi2030 - 19-10-13

لتوضيح اكثر لطبيعة السؤال

لو فتحنا متصفح الانترنتت ودخلنا الى موقع غوغل

نلاحظ انه في خانة البحث، كيف ان النص غير ملتصق بحافة التكست بوكس


RE: هل يوجد margin داخلي للتكست بوكس ؟ - @@أبورائد@@ - 19-10-13

السلام عليكم ورحمة الله وبركاته


تفضل تعديل الهوامش اليمين واليسار ل TextBox




السلام عليكم ورحمة الله وبركاته


RE: هل يوجد margin داخلي للتكست بوكس ؟ - kafi2030 - 20-10-13

الف شكر
اخي ابو رائد

على اجابتك

قمت بتجريب المثال الذي تفضلت به حضرتك، وكان يعمل بشكل ممتاز

تم نقل ذات الكود الى برنامجي، ولكنه للاسف لم يعمل

بعد البحث والتدقيق، اكتشفت سبب عدم عدم الكود الذي تفضلت به

السبب يكمن في انني في حدث التركيز على التكست بوكس، اقوم بتكبير الخط من اجل اضفاء مزيد من الوضوح والتيسير على المستخدم اثناء الادخال، وبعد فقدان التركيز ارجع الخط الى حجمه

كود :
Me.txt_Note.Font = New Font(Me.txt_Note.Font.Name, 14, FontStyle.Bold)

هذا السطر هو السبب في عدم عمل الكود، وعند تجميده يعمل الكود

كيف لي ان اوفق ببن الكودين ( الكود المتعلق بازاحة الكتابة عن حافة التكست بوكس، وكود تكبير الخط عندما يكون التركيز على العنصر)

ارجو الارشاد والتوجيه

بارك الله فيكم


RE: هل يوجد margin داخلي للتكست بوكس ؟ - @@أبورائد@@ - 20-10-13

(20-10-13, 12:28 AM)kafi2030 كتب : الف شكر
اخي ابو رائد

على اجابتك

قمت بتجريب المثال الذي تفضلت به حضرتك، وكان يعمل بشكل ممتاز

تم نقل ذات الكود الى برنامجي، ولكنه للاسف لم يعمل

بعد البحث والتدقيق، اكتشفت سبب عدم عدم الكود الذي تفضلت به

السبب يكمن في انني في حدث التركيز على التكست بوكس، اقوم بتكبير الخط من اجل اضفاء مزيد من الوضوح والتيسير على المستخدم اثناء الادخال، وبعد فقدان التركيز ارجع الخط الى حجمه

كود :
Me.txt_Note.Font = New Font(Me.txt_Note.Font.Name, 14, FontStyle.Bold)

هذا السطر هو السبب في عدم عمل الكود، وعند تجميده يعمل الكود

كيف لي ان اوفق ببن الكودين ( الكود المتعلق بازاحة الكتابة عن حافة التكست بوكس، وكود تكبير الخط عندما يكون التركيز على العنصر)

ارجو الارشاد والتوجيه

بارك الله فيكم

السلام عليكم ورحمة الله وبركاته


تحتاج لتنفيذ أمر الـ Margin بعد كل مرة تغير فيها الخط مثل التالي
كود :
Me.txt_Note.Font = New Font(Me.txt_Note.Font.Name, 14, FontStyle.Bold)
TextBoxMargin(Me.txt_Note, 10, 10)


السلام عليكم ورحمة الله وبركاته


RE: هل يوجد margin داخلي للتكست بوكس ؟ - nmst70 - 20-10-13

اليك الحل اخي العزيز بطريقة سهلة ومختصر



PHP كود :
TextBox1.Text Space(5) + ""



مع التحية 



RE: هل يوجد margin داخلي للتكست بوكس ؟ - kafi2030 - 20-10-13

الف شكر
اخي ابو رائد على اجابتك

نجخ الامر والحمد لله

الا انه وبسبب حاجتي الى هذا الكود في كل شاشة من شاشات الادخال، قررت ان اضعه في وحدة نمطية، حتى لا اضعه في كل شاشة
وعدلت كلمة Private الى كلمة Public
كود :
#Region " TextBoxMargin "
    <Runtime.InteropServices.DllImport("user32.dll", CharSet:=Runtime.InteropServices.CharSet.Auto)> _
    Public Shared Function SendMessage(ByVal hWnd As IntPtr, ByVal Msg As UInt32, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr
    End Function

    Public Const EM_SETMARGINS = &HD3
    Public Const EC_LEFTMARGIN = &H1
    Public Const EC_RIGHTMARGIN = &H2

    Public Sub TextBoxMargin(ByVal control As TextBox, ByVal leftMargin As Integer, ByVal rightMargin As Integer)
        Dim lParam As Long = &H10000 * rightMargin + leftMargin
        SendMessage(control.Handle.ToInt32, EM_SETMARGINS, EC_LEFTMARGIN Or EC_RIGHTMARGIN, lParam)
    End Sub

#End Region

الا انه اعطى رسالة خطأ

Error 1 Methods in a Module cannot be declared 'Shared'. G:\Kafi_Net_LinQ\kafi\My_function.vb 25 12 kafi

ارجو تصويب الكود السابق، من اجل جعله في وحدة نمطية
والف شكر


RE: هل يوجد margin داخلي للتكست بوكس ؟ - sooriaty03 - 20-10-13

السلام عليكم ورحمة الله وبركاته

بعد إذن أخي أبورائد

فقد تم تضمين الكود في الأداة التي صممتها لك
ولتغيير قيمة المحاذاة غير قيمة الخاصية RightLeftMargins والتي ستكون افتراضيا صفر


RE: هل يوجد margin داخلي للتكست بوكس ؟ - hoob computer - 21-10-13

أخي الكريم, من غير المعقول عمل فنكشن (public) و بنفس الوقت (shared) ....

لذا قم بتغيير الكود التالي:
PHP كود :
Public Shared Function SendMessage(ByVal hWnd As IntPtrByVal Msg As UInt32ByVal wParam As IntPtrByVal lParam As IntPtr) As IntPtr 

إلى:
PHP كود :
Public Function SendMessage(ByVal hWnd As IntPtrByVal Msg As UInt32ByVal wParam As IntPtrByVal lParam As IntPtr) As IntPtr 


تحياتي


RE: هل يوجد margin داخلي للتكست بوكس ؟ - kafi2030 - 21-10-13

الف شكر
اخي
hoob computer

على التوضيح
بارك الله فيك