jeqele 563 ارسال شده در 28 آبان، ۱۳۹۳ اشتراک گذاری ارسال شده در 28 آبان، ۱۳۹۳ خوب با این ماژول که نوشتم میتونید برای label اندازه فونت رو درست کنین بدون اینکه در اسکرین های مختلف مشکل داشته باشین. در واقع با تغییر سایز فونت تو گوشی های مختلف فونت شما هم کم یا زیاد میشه. ماژولو یه نگاهی بندازین خیلی ساده نوشته شده و همونطور که قبلا گفتم یه جورایی کلک رشتیه اما در نبود کتابخانه AutoSizeTextLabel خوب کار میکنه. دوتا sub براش گذاشتم که توضیح میدم. ChangeFontByLabelSize.MinimomFontlabel(SampelLabel, Font) با این کد می تونید یه فونت دلخواه به label بدید که اگه نوشته از Label بیرون نزنه از این فونت استفاده میکنه اما اگه نوشته کامل دیده نشه تا اندازه ای که قابل رویت بشه فونت رو کم می کنه. ChangeFontByLabelSize.FitToLabelSize(SampelLabel) با این یکی همیشه فونت رو دقیقا تا حدی که نه کوچکتر از label باشه نه بزرگ تنظیم میکنه. خوب مطمعنا اگه یکم با b4a آشنایی داشته باشین هم میتونین ماژولو بسته به نیازتون تغییر بدین هم مثلا برای listview ازش استفاده کنین. خودم برای button استفاده کردم زیاد خوب در نیومد واسه همین اینجا نگذاشتم. http://s5.picofile.com/file/8152432742/ChangeFontByLabelSize.rar.html حالا مثال برای اعمال تغییرات روی لیبل: اول از همه باید کتابخانه StringUtils رو به پوشه Library اضافه کنید که اگه ندارید از اینجا دانلول کنید از حالت فشرده خارج کنید و اضافه کنید. http://s5.picofile.com/file/8154297092/StringUtils.rar.html بعدش ماژول رو از طریق Project>add existing moduls به برنامه اضافه کنید. بعد مثل این مثال عمل کنید. ِDim SV1 As ScrollView Dim label1 As Label SV1.Initialize(100%y) label1.Initialize("label") label1.Text = "your text" SV1.Panel.AddView(label1, 0, 0, 300dip, 600dip) ChangeFontByLabelSize.FitToLabelSize(label1) تو کد بالا خط به خط توضیح میدم. خط 1: یه اسکرول ویو تغریف کردم. خط 2: یه لیبل تعریف کردم. خط 3: اسکرول ویو رو اینیشیالایز کردم که اگه شما با دیزاینر تعرف کنی نیاز به این خط نیست. خط 4: لیبل رو رو اینیشیالایز کردم که اگه شما با دیزاینر تعرف کنی نیاز به این خط نیست. خط 5: به لیبل یه تکست دادم، شما هر تکستی خواستی به لیبل بده به جاش. مثلا میتونی از دیتانیس یا Edit text متنتو بگیری. خط 6: لیبل رو توی اسکرول ویو اضافه میکنه. پیشنهاد میشه سایز ها رو توی این خط به جای dip با %X و %y بدبد. خط 7: این خط همون روش استفاده از ماژوله. این خط کد مقدار فونت لیبل رو با دقیقا به انداطه ای که توی لیبل دیده بشه بزرگ با کوچیک می کنه. توی پست بعد آموزشش واسه لیست ویو گذاشتم یا حق لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
jeqele 563 ارسال شده در 29 آبان، ۱۳۹۳ سازنده اشتراک گذاری ارسال شده در 29 آبان، ۱۳۹۳ خوب حالا برای آشنایی دوستان یه مثال از کاربرد این ماژول برای لیست ویو میزارمبرای این کار شما باید اول یه label تعریف کنید و اندازه گیری ها رو روی اون انجام بدید بعد اندازه ها رو به لیست ویو منتقل کنید و در نهایت لیبل رو remove کنید.این مثال برای یک لیست ویو با نام listview1 و با هر تعداد سطر که داشته باشه نوشته شده و جواب میده که در ابتدا بلند ترین سطر انتخاب میشه و اندازه گیری font بر پایه اون انجام میشهاول ماژول بالا رو به پروژه اضافه کنید و بعد از این کد استفاده کنید Dim st As String = "" Dim a As String Dim samplelabel As Label For i = 0 To Listview1.Size - 1 a = Listview1.GetItem(i) If a.Length > st.Length Then st = a End If Next samplelabel.Initialize("SampleLabel") samplelabel.Visible = False Activity.AddView(samplelabel, Listview1.Left, Listview1.Top, Listview1.Width, Listview1.SingleLineLayout.ItemHeight) samplelabel.Text = st samplelabel.TextSize = Listview1.SingleLineLayout.Label.TextSize ChangeFontByLabelSize.MinimomFontLabel(samplelabel, samplelabel.TextSize) Listview1.SingleLineLayout.Label.TextSize = samplelabel.TextSize samplelabel.RemoveView دوستان از همین روش میتونند برای button هم استفاده کنند اما به خوبی لیبل در نمیاد متاسفانه. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
shahab1392 47 ارسال شده در 7 آذر، ۱۳۹۳ اشتراک گذاری ارسال شده در 7 آذر، ۱۳۹۳ با سلام متن داخل ScrollView رو چطور میشه تنظیم کرد لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Farzad Musavi 576 ارسال شده در 7 آذر، ۱۳۹۳ اشتراک گذاری ارسال شده در 7 آذر، ۱۳۹۳ با سلاممتن داخل ScrollView رو چطور میشه تنظیم کرد متن داخل ScrollView منظورت چیه؟ باید متن رو بزاری تو لیبل بعد بیاری اسکرول ویو دگ لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
shahab1392 47 ارسال شده در 7 آذر، ۱۳۹۳ اشتراک گذاری ارسال شده در 7 آذر، ۱۳۹۳ متن داخل ScrollView منظورت چیه؟ باید متن رو بزاری تو لیبل بعد بیاری اسکرول ویو دگ ببخشید اشتباه شد بله متن داخل لیبل هستش لطفا بگید که این ماژول را چطور بکار ببرم و کجا قرارش بدم لطفا روان و واضح راهنمایی کنید ... لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
jeqele 563 ارسال شده در 7 آذر، ۱۳۹۳ سازنده اشتراک گذاری ارسال شده در 7 آذر، ۱۳۹۳ اول باید کتابخانه string utils رو اگه ندارید به برنامه اضافه کنید بعد ماژول رو از طریق Project>add existing moduls به برنامه اضافه کنید. بعد مثل این مثال عمل کنید. ِDim SV1 As ScrollView Dim label1 As Label SV1.Initialize(100%y) label1.Initialize("label") label1.Text = "your text" ChangeFontByLabelSize.FitToLabelSize(label1) SV1.Panel.AddView(label1, 0, 0, 300dip, 600dip) تو کد بالا خط به خط توضیح میدم. خط 1: یه اسکرول ویو تغریف کردم. خط 2: یه لیبل تعریف کردم. خط 3: اسکرول ویو رو اینیشیالایز کردم که اگه شما با دیزاینر تعرف کنی نیاز به این خط نیست. خط 4: لیبل رو رو اینیشیالایز کردم که اگه شما با دیزاینر تعرف کنی نیاز به این خط نیست. خط 5: به لیبل یه تکست دادم، شما هر تکستی خواستی به لیبل بده به جاش. مثلا میتونی از دیتانیس یا Edit text متنتو بگیری. خط 6: این خط همون روش استفاده از ماژوله. این خط کد مقدار فونت لیبل رو با دقیقا به انداطه ای که توی لیبل دیده بشه بزرگ با کوچیک می کنه. خط 7: لیبل رو توی اسکرول ویو اضافه میکنه. پیشنهاد میشه سایز ها رو توی این خط به جای dip با %X و %y بدبد. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
shahab1392 47 ارسال شده در 7 آذر، ۱۳۹۳ اشتراک گذاری ارسال شده در 7 آذر، ۱۳۹۳ سلام من از این استفاده میکنم ماژول رو هم گذاشتم ولی اخطار میده و متن رو نشون نمیده Sub Globals 'These global variables will be redeclared each time the activity is created. 'These variables can only be accessed from this module. Private ScrollView1 As ScrollView End Sub Sub Activity_Create(FirstTime As Boolean) 'Do not forget to load the layout file created with the visual designer. For example: Activity.LoadLayout("frm2") If File.Exists(File.DirInternal,"data.db")= False Then File.Copy(File.DirAssets,"data.db",File.DirInternal,"data.db") End If If Menu.SQL1.IsInitialized=False Then Menu.SQL1.Initialize(File.DirInternal,"data.db",False) End If Dim cur As Cursor cur=Menu.SQL1.ExecQuery("SELECT * FROM Tbl WHERE id="&Menu.Fasl) cur.Position=0 Dim label1 As Label ScrollView1.Initialize(100%y) label1.Initialize("Label1") label1.text=cur.GetString("Matn") ChangeFontByLabelSize.FitToLabelSize(label1) ScrollView1.Panel.AddView(label1, 0, 0, 300dip, 600dip) لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
jeqele 563 ارسال شده در 7 آذر، ۱۳۹۳ سازنده اشتراک گذاری ارسال شده در 7 آذر، ۱۳۹۳ ببخشید اشتباه از من بود جای خط 6 و 7 رو عوض کن. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
مهدی ایزدی 9,203 ارسال شده در 8 آذر، ۱۳۹۳ اشتراک گذاری ارسال شده در 8 آذر، ۱۳۹۳ با تشکر فراوان از امین Jeqele عزیز بخاطر این پست. به دلیل پر طرفدار بودن این موضوع ، پست مهم شد !!! *مکار* لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
jeqele 563 ارسال شده در 8 آذر، ۱۳۹۳ سازنده اشتراک گذاری ارسال شده در 8 آذر، ۱۳۹۳ *قلب* ممنون مهدی جان( M.izadi )لطف داری. انگار یکم آموزشم ضعیف بود برای همین پست اول و دوم با ذکر مثال برای لیبل و لیست ویو به روز شد لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ali8968 11 ارسال شده در 21 آذر، ۱۳۹۳ اشتراک گذاری ارسال شده در 21 آذر، ۱۳۹۳ با سلام دوستان ببخشید من وقتی از این کد استفاده میکنم فقط برای بار اول درست کار میکه یعنی وقتی یه layout دیگه لود میشه این layout دیگه با این کد درست کار نمیکنه لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Nemesis 1,846 ارسال شده در 29 خرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 29 خرداد، ۱۳۹۴ مشکل از کد نویسی شما هست من در چندین لایوت و اکتویتی استفاده کردم و هیج مشکلی نداره فراموش نکنید حتما Label باید Initialize شده باشده لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
حمید زارع 331 ارسال شده در 29 خرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 29 خرداد، ۱۳۹۴ ببینید این تاپیک کارتون رو راه میندازه ؟ http://answercenter.ir/topic/3739-auto-size-label-%D8%A8%D8%B3%DB%8C%D8%A7%D8%B1-%D8%B3%D8%A7%D8%AF%D9%87-%D9%88-%D8%B1%D8%A7%D8%AD%D8%AA/ لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ghost 70 ارسال شده در 30 خرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 30 خرداد، ۱۳۹۴ سلام و تشکر برای پست خوبتون اما برای من یه مشکلی پیش اومده. توی قسمت If st.Length این ارور رو میده. B4A version 4.30 Parsing code. 0.12 Compiling code. Error .Error compiling program .(Error description: Syntax error (missing parameter Occurred on line: 51 if st.Length Word: length چیزی باید تو اون قسمت بنویسم؟ پیشاپیش مچکرم لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Nemesis 1,846 ارسال شده در 30 خرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 30 خرداد، ۱۳۹۴ سلام و تشکر برای پست خوبتون اما برای من یه مشکلی پیش اومده. توی قسمت If st.Length این ارور رو میده. B4A version 4.30 Parsing code. 0.12 Compiling code. Error .Error compiling program .(Error description: Syntax error (missing parameter Occurred on line: 51 if st.Length Word: length چیزی باید تو اون قسمت بنویسم؟ پیشاپیش مچکرم برادر من پست اول رو خوب مطالعه کنید دچار مشکل نشید شما نیاز به کتابخونه StringUtils دارید لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ghost 70 ارسال شده در 31 خرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 31 خرداد، ۱۳۹۴ برادر من پست اول رو خوب مطالعه کنید دچار مشکل نشید شما نیاز به کتابخونه StringUtils دارید دوست گرامی،کتابخونشو دارم و فعال هم هست. به نظر من بعد از if باید یه شرطی چیزی بذاریم که من نمیدونم چه شرطی. یا به نظرم یه چیزی تو این مایه ها. به هر حال ممنون لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
پژمان نیکروان 6,055 ارسال شده در 31 خرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 31 خرداد، ۱۳۹۴ دوست گرامی،کتابخونشو دارم و فعال هم هست. به نظر من بعد از if باید یه شرطی چیزی بذاریم که من نمیدونم چه شرطی. یا به نظرم یه چیزی تو این مایه ها. به هر حال ممنون حرف Then رو ننوشتید،شرط باید اینجوری باشه: If st.Length<>0 then من اینجا <>0 رو برای مثال گذاشتم. ملا منظورم این بود که بعد از شرط حرف Then رو قرار بدید. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ghost 70 ارسال شده در 1 تیر، ۱۳۹۴ اشتراک گذاری ارسال شده در 1 تیر، ۱۳۹۴ ممنون آقای نیکروان.ولی بعد then باید یه شرطی باشه.اما من نمیدونم چه جور شرطی رو بذارم.بازم ممنون لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Nemesis 1,846 ارسال شده در 1 تیر، ۱۳۹۴ اشتراک گذاری ارسال شده در 1 تیر، ۱۳۹۴ ممنون آقای نیکروان.ولی بعد then باید یه شرطی باشه.اما من نمیدونم چه جور شرطی رو بذارم.بازم ممنون الان مشکل شکا دقیقا کجاست ؟ لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ghost 70 ارسال شده در 1 تیر، ۱۳۹۴ اشتراک گذاری ارسال شده در 1 تیر، ۱۳۹۴ ممنون که پرسیدید خب مشکل اصلی من اینه که جلوی If st.Length یاید چیزی نوشت یا یه کار دیگه؟ یه مشکل دیگه هم تو ماژولی که باز کردم دارم.البته بیشتر شبیه سواله تا مشکل. ماژول که باز میشه یه صفحه بارگذاری میکنه.کاری توش نباید بکنیم؟؟ اینم کل مشکل من لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.