Salar82 901 ارسال شده در 17 دی، ۱۳۹۸ اشتراک گذاری ارسال شده در 17 دی، ۱۳۹۸ سلام موضوعی که قصد آموزشش رو دارم «فیت کردن متن در لیبل» هست. یکی از مشکلات اساسی برنامهنویسی اینه که موقعی که تو لیبل متنی رو مینویسیم، سایز متن لیبل در تمام گوشیها یکسانه؛ این در حالیه که سایز لیبل بر اساس اندازهی سایز گوشی کاربر تغییر میکنه و این باعث میشه که جلوهی زیبای برنامه از بین بره. برای حل این مشکل کافیه فقط Sub زیر رو به پروژه اضافه کنیم: Sub SetLabelTextSize(ex As Label, txt As String) Dim dt As Float Dim limit = 0.5 As Float Dim h As Int Dim stu As StringUtils ex.Text = txt ex.TextSize = 72 dt = ex.TextSize h = stu.MeasureMultilineTextHeight(ex, txt) Do While dt > limit Or h > ex.Height dt = dt / 2 h = stu.MeasureMultilineTextHeight(ex, txt) If h > ex.Height Then ex.TextSize = ex.TextSize - dt Else ex.TextSize = ex.TextSize + dt End If Loop ex.TextSize=ex.textsize * 0.8 End Sub البته باید کتابخانه StringUtils رو فعال کنیم. و هر وقت خواستیم از اون استفاده کنیم، کافیه اسم رویداد رو در مکان مناسب بنویسیم. از این رویداد میتونیم برای button هم استفاده کنیم. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.