رفتن به مطلب
برای استفاده از انجمن و عضـویت کلیک کنید.

AnswerCenter

مرکز پاسخگویی به سوالات برنامه نویسی

  • مرجع پاسخگویی
  • تولید آموزش
  • سفارش پروژه

درخواست سفارش پروژه

اطلاعیه

کاربر گرامی

به انجمن برنامه نویسی AnswerCenter.ir خوش آمدید

 برای استفاده از تمامی امکانات سایت لطفا در انجمن عضو شوید


  • 0
AmirViCTor

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

سوال

AmirViCTor    1

کاربر عادی

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

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

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

 

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 پاسخ به این سوال تا کنون داده شده است

پست های پیشنهاد شده

  • 0
sbr    227

کاربر رو به رشد

در 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)

 

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


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
AmirViCTor    1

کاربر عادی

در ۱ ساعت قبل، 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)

 

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

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


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
sbr    227

کاربر رو به رشد

در 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

 

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

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

  • تشکر 1

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


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
peyman128    18

کاربر عادی

در 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

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


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
peyman128    18

کاربر عادی

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

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

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

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


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
AmirViCTor    1

کاربر عادی

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

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

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

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


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

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

مهمان
پاسخ به این سوال ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به عنوان یک لینک به جای

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.


×
×
  • جدید...