رفتن به مطلب
  • 0

ایجاد فاصله بین متن های یک لیبل


AmirViCTor

سوال

سلام دوستان خسته نباشید 

چند روزی هست برا نوشتن یه برنامه دارم به این در و اون در میزنم و خب خداروشکر تونستم به یه جاهایی از برنامه برسم اما چون کسی نبود تو این راه یکم کمکم کنه تصمیم گرفتم بیام این سایت و یه تاپیک راجب به مشکلم بزنم 

یه برنامه نوشتم و اکثر کدهاشو اوکی کردم ولی متسافانه بخشی که راجب به فاصله بین متن های لیبلم هست گیر کردم و نمیتونم هیچ جوره درستش کنم بزارید کد هاشو براتون بفرستم

 

Dim string1 As StringUtils
    Dim Obj1 As Reflector

Obj1.Target = La_2
    Obj1.RunMethod3("setLineSpacing", 1 , "java.lang.float", 1.8, "java.lang.float")
    La_2.Gravity=Gravity.RIGHT
    La_2.Height=string1.MeasureMultilineTextHeight(La_2,La_2.Text)
    ScrollView1.Panel.Height=La_2.Top+La_2.Height

این خلاصه ای از کد هام بود حالا اگه این بالا دقت کنید وقتی از کتابخونه ی Reflector استفاده میکنم متنم ناقض میشه و از دیتا بیس تکست استفاده کردم بدون این کد متن خیلی در هم میره و چشم رو اذیت میکنه براتون دوتا عکس هم میزارم لطفا کمک کنید ممنون.

asdasdsad.PNG

213.PNG

لینک ارسال
به اشتراک گذاری در سایت های دیگر

7 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

در در 24 مرداد 1398 در 12:46، peyman128 گفته است :

میشه راه حلتونو اینجا بگید؟

از همین کدی که خودتون گفتید استفاده کردم نتیجه گرفتم.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 39 دقیقه قبل، AmirViCTor گفته است :

سلام دوستان خسته نباشید 

چند روزی هست برا نوشتن یه برنامه دارم به این در و اون در میزنم و خب خداروشکر تونستم به یه جاهایی از برنامه برسم اما چون کسی نبود تو این راه یکم کمکم کنه تصمیم گرفتم بیام این سایت و یه تاپیک راجب به مشکلم بزنم 

یه برنامه نوشتم و اکثر کدهاشو اوکی کردم ولی متسافانه بخشی که راجب به فاصله بین متن های لیبلم هست گیر کردم و نمیتونم هیچ جوره درستش کنم بزارید کد هاشو براتون بفرستم

213.PNG

سلام دوست عزیز

ببینید این کد مشکلتونو حل میکنه ؟

La_1.Padding = Array As Int (30dip, 10dip, 30dip, 10dip)
La_2.Padding = Array As Int (30dip, 10dip, 30dip, 10dip)

    یا 

ScrollView1.Panel.Padding = Array As Int (10dip, 10dip, 30dip, 10dip)

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در ۱ ساعت قبل، sbr گفته است :

سلام دوست عزیز

ببینید این کد مشکلتونو حل میکنه ؟


La_1.Padding = Array As Int (30dip, 10dip, 30dip, 10dip)
La_2.Padding = Array As Int (30dip, 10dip, 30dip, 10dip)

    یا 

ScrollView1.Panel.Padding = Array As Int (10dip, 10dip, 30dip, 10dip)

 

استفاده میکنیم ولی بازم مصل همون قبله دیگه داره کلافم میکنه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 19 ساعت قبل، AmirViCTor گفته است :

استفاده میکنیم ولی بازم مصل همون قبله دیگه داره کلافم میکنه

سوالتون دقیقا کدومه ؟ 

1. چسبیده بودن متن به دیواره کناری هست ؟

2.یا فاصله بین خطوط متن ؟

3. فاصله بین دو متن که به یک لیبل داده میشه ؟

 

نکته مهم توی همه حالت ها اینه که لیبلی که میخواید متن رو بهش بدید حتما ازطریق کدنویسی تعریفش کنید و نه از طریق دیزاینر

 

جواب سوال اول

 

یه لیبل از طریق کدنویسی تعریف کنید (نه از طریق دیزاینر، از طریق کدنویسی) ویژگی های مد نظرتونو بهش بدید متن رو هم بهش بدید و برای لیبل padding تعریف کنید

در نهایت لیبل رو به پنل ِ اسکرول ویوو اضافه کنید (خط 40 عکس زیر)

 

Screenshot_2_.png

 

جواب سوال دوم

از طریق کد زیر

Dim Obj1 As Reflector
Obj1.Target = label
	Obj1.RunMethod3("setLineSpacing", 1, "java.lang.float", 1.5, "java.lang.float")

البته این  کد رو بعد از اینکه به لیبل متن رو دادید اعمال کنید

 

جواب سوال سوم

ببینید اگه میخواید مثلا دو تا متن به لیبل بدید و از هم جدا باشن و فاصله داشته باشن خب  طبیعتا  باید به تعداد دلخواه لاین خالی  (رفتن به خط بعد، همون کاری که اینتر توی وورد انجام میده) بزارید

که این دستور توی بیسیک با CRLF انجام میشه

Screenshot_3_.png

 

امیدوارم جوابتون یکی از اینا باشه

چون چیزدیگه ای از عنوان سوالتون برداشت نمیشه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 6 ساعت قبل، sbr گفته است :

سوالتون دقیقا کدومه ؟ 

1. چسبیده بودن متن به دیواره کناری هست ؟

2.یا فاصله بین خطوط متن ؟

3. فاصله بین دو متن که به یک لیبل داده میشه ؟

 

نکته مهم توی همه حالت ها اینه که لیبلی که میخواید متن رو بهش بدید حتما ازطریق کدنویسی تعریفش کنید و نه از طریق دیزاینر

 

جواب سوال اول

 

یه لیبل از طریق کدنویسی تعریف کنید (نه از طریق دیزاینر، از طریق کدنویسی) ویژگی های مد نظرتونو بهش بدید متن رو هم بهش بدید و برای لیبل padding تعریف کنید

در نهایت لیبل رو به پنل ِ اسکرول ویوو اضافه کنید (خط 40 عکس زیر)

 

Screenshot_2_.png

 

جواب سوال دوم

از طریق کد زیر


Dim Obj1 As Reflector
Obj1.Target = label
	Obj1.RunMethod3("setLineSpacing", 1, "java.lang.float", 1.5, "java.lang.float")

البته این  کد رو بعد از اینکه به لیبل متن رو دادید اعمال کنید

 

جواب سوال سوم

ببینید اگه میخواید مثلا دو تا متن به لیبل بدید و از هم جدا باشن و فاصله داشته باشن خب  طبیعتا  باید به تعداد دلخواه لاین خالی  (رفتن به خط بعد، همون کاری که اینتر توی وورد انجام میده) بزارید

که این دستور توی بیسیک با CRLF انجام میشه

Screenshot_3_.png

 

امیدوارم جوابتون یکی از اینا باشه

چون چیزدیگه ای از عنوان سوالتون برداشت نمیشه

مشکلی که این دوستمون دارن، منم باهاش مواجه هستم.

ببینید وقتی فاصله ی بین خطوط توی یه لیبل به اندازه ی پیش فرضش باشه، راحت میشه اندازه ی متن لیبل رو با کتابخونه گرفت و ارتفاع پنل اسکرول ویو رو مساوی با اون قرار داد؛ ولی وقتی فاصله ی بین خطوط رو زیاد میکنیم(مثلا ۲)، کتابخونه این فاصله رو توی گرفتن ارتفاع متن لیبل لحاظ نمیکنه و به خاطر همین بخشی از متن از اسکرول ویو میزنه بیرون. از طرفی هم فاصله ی پیش فرض خطوط خیلی کمه و این باعث میشه متون کمی ناخوانا بشن.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 1 ساعت قبل، AmirViCTor گفته است :

خیلی ممنون از همه گی مشکلم رفع شد!!!

میشه راه حلتونو اینجا بگید؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...