PDA

View Full Version : ریچ تکست باکس



smt_414
شنبه 14 مهر 1386, 19:52 عصر
سلام اساتید
در مورد ریچ تکست باکس سوال داشتم
راستش می خواستم زمانی که مقداری و یا کل متن موجود در اون رو سلکت می کنم
بتونم روش مانور بدم
مثل تغیر رنگ و اندازه فونت
فکر کنم اگه بشه اون چیزی که سلکت شده داخل خاصیت تکست ، ریچ تکست باز بریزیم
باقی ماجرا حل بشه
البته داخل این ریچ تکست باکس فقط متن قرار داره
اگه با چیز دیگه ای هم به نتیجه می رسیم
اصراری بر استفاده از ریچ تکست باکس نیست
با تشکر

PC2st
شنبه 14 مهر 1386, 21:43 عصر
برای تغییر رنگ و اندازه فونت و ... از خاصیتهای SelectionFont و SelectionColor و SelectionBackColor و ... استفاده کن و البته این خاصیتها زمانی کاربرد داره که یک قسمتی از متن انتخاب شده باشه، برای انتخاب قسمتی از متن، از خاصیتهای SelectionStart و SelectionLength استفاده کنید.

smt_414
شنبه 14 مهر 1386, 21:59 عصر
سلام
تشکر

برای انتخاب قسمتی از متن، از خاصیتهای SelectionStart و SelectionLength استفاده کنید

امکان داره یک کد در مورد نحوه استفاده بنویسید.

PC2st
شنبه 14 مهر 1386, 22:17 عصر
richTextBox1.SelectionStart = 2;
richTextBox1.SelectionLength = 5;
richTextBox1.SelectionColor = Color.Blue;

کاراکتر های 2 تا 5 رو انتخاب و رنگش رو آبی میکنه.

بجای این کار، در صورت آشنایی با فرمت RTF ، میتونی بدون استفاده از این خاصیتها و با یک سری دستور (در قالب فرمت RTF)، یک متن رنگی در richTextBox نوشته یا حتی جدول رسم کنید. http://msdn2.microsoft.com/en-us/library/aa140277%28office.10%29.aspx (فکر کنم ورژن RTF 1.8 جدیدترین باشه و در این لینک برای ورژن 1.6 هست) (برای دستیابی به کدهای تحت فرمت RTF از خاصیت Rtf استفاده کنید)

Mahdi.Kiani
شنبه 14 مهر 1386, 22:43 عصر
در مورد ریچ تکست باکس


بابا گفتن فروم فارسی هست ولی نه دیگه ریچ تکست باکس
باور کن تا نیومدم تو تاپیک و متن را نخوندم نفهمیدم این چیه
به خدا بعضی مواقع هم انگلیسی خوبه (rich textBox) خداییش این بهتر نیست ؟

smt_414
یک شنبه 15 مهر 1386, 13:13 عصر
سلام
PC2st.ir جان مثه همیشه ممنون
متاسفانه در مورد rtf چیزی نمی دونم
به امکانات اونچنونی هم احتیاجی نیست
فقط متن خالی ، کدی که نوشتین رو اگه بگید چه شکلی میشه از طریق رشته سلکت شده با موس ، مقدار دهی کرد
یه دنیا ممنون می شم

یه سوال دیگه چه شکلی میشه داخل ریچ تکست باکس ، امکان راست کلیک رو اضافه کرد؟؟

تشکر
:بوس:

PC2st
یک شنبه 15 مهر 1386, 16:43 عصر
بابا گفتن فروم فارسی هست ولی نه دیگه ریچ تکست باکس
باور کن تا نیومدم تو تاپیک و متن را نخوندم نفهمیدم این چیه
به خدا بعضی مواقع هم انگلیسی خوبه (rich textBox) خداییش این بهتر نیست ؟
خودت هم از کلماتی چون فروم و تاپیک استفاده کردی :لبخند:



چه شکلی میشه از طریق رشته سلکت شده با موس ، مقدار دهی کرد
وقتی که رشته توسط مووس انتخاب میشه، در واقع خاصیتهای SelectionStart و SelectionLength هم توسط مووس مقدار دهی شده است. پس فقط کافیست که خاصیت SelectionColor یا غیره، رو تنظیم کنیم. مثلا، یک richTextBox1 و یک button1 رو به فرم اضافه می کنیم و سپس برای رویداد Click از button1، کد زیر رو مینویسیم:


richTextBox1.SelectionColor = Color.Blue;

برنامه رو اجرا و یک متن وارد کرده، سپس متنی که میخوای تغییر رنگ پیدا کنه رو انتخاب کن، روی دکمه button1 کلیک کنید تا رنگ متن عوض بشه.

در مورد سوال دوم، من نتونستم خاصیتی برای این منظور پیدا کنم، اما میتونی یک کامپوننت contectMenuStrip1 به فرم اضافه کرده و آیتم هاش رو ایجاد کنید و توسط خاصیت ContextMenuStrip از شیئ richTextBox1 ، اون contextMenuStrip1 رو براش مشخص کنید، مثلا:


richTextBox1.ContextMenuStrip = contextMenuStrip1;

خاصیت ContextMenuStrip در زمان design هم در دسترسی است (از پنجره properties).

smt_414
دوشنبه 16 مهر 1386, 22:57 عصر
سلام
یه سوال
زمانی که از داخل برنامه خاصیت Right to Left رو تغیر می دم تمام تغیراتی که قبل از این اعمال شده
مانند تغییر اندازه فونت و رنگ
همگی از بین میرن
و مورد دیگه اینکه تمام خطوط داخل ریچ تکست باکس با هم تغییر مکان میدن(Right , Left)
برای رفع این دو مشکل چه باید کرد؟؟
باتشکر
:بوس:

smt_414
سه شنبه 17 مهر 1386, 21:03 عصر
سلام
کسی از دوستان می تونه راهنمایی کنه ؟؟
با تشکر