PDA

View Full Version : رنگی نوشتن



bpzone
یک شنبه 22 فروردین 1389, 14:30 عصر
با سلام
اگر بخواهیم یک سری اطلاعات رو فرضاً در textbox نمایش بدیم بصورتی که قسمتی از متن را به صورت دلخواه رنگی کنیم و ادامه متن رو با یک رنگ دیگه بنویسیم ، چیکار باید بکنیم یا از چه کامپوننتی باید استفاده کنیم ؟

Shahram_Shobeiri
یک شنبه 22 فروردین 1389, 14:44 عصر
از richtextbox استفاده کنید.

bpzone
یک شنبه 22 فروردین 1389, 14:57 عصر
از richtextbox هم استفاده کردم ولی وقتی که رنگ نوشته رو تغییر میدید، رنگ کل نوشته تغییر می کنه ولی من می خوام که یک سری از اطلاعات رو فرضاً آبی بنویسم و چند خط رو قرمز و مجدداً بتونم رنگ رو تغییر بدم و همه اطلاعات با رنگ های متفاوت نمایش داده بشه ...

zmmehrdad
یک شنبه 22 فروردین 1389, 16:15 عصر
اگر می خوای بخشی از Text را رنگی کنی یا باید از UI او بخش Mark بشه استفاده از متد زیر

this.richTextBox1.Select(Start, Len);
سپس با خصوصیت SelectionColor اونو رنگی کن

this.richTextBox1.SelectionColor = Color.Red;

AliRezaPro
یک شنبه 22 فروردین 1389, 16:52 عصر
این کد رو هم نگاه کن

int line = richTextBox1.Lines .Count() ;
richTextBox1.SelectionColor = line % 2 == 0 ? Color.Red : Color.Blue;

bpzone
دوشنبه 23 فروردین 1389, 14:59 عصر
من کد شما رو به صورت زیر نوشتم ولی فقط آخرین سطری رو که اضافه می کنم رنگی می کنه و مابقی رو نه :افسرده:



bool f = false;
int len_s, len_e;

for (int i = 0; i < 10; i++)
{
len_s = richTextBox1.Text.Length;
richTextBox1.Text += "\n" + textBox1.Text;
len_e = richTextBox1.Text.Length;
if (f)
{
richTextBox1.Select(len_s, len_e - len_s);
richTextBox1.SelectionColor = Color.Green;
}
else
{
richTextBox1.Select(len_s, len_e - len_s);
richTextBox1.SelectionColor = Color.Pink;
}
f = !f;
}
اما وقتی بصورت دستی انجام می دم دقیقاً اتفاق می افته و تمام قسمت های مشخص شده رنگی میشه :متفکر: به عنوان مثال



richTextBox1.Select(100, 300);
richTextBox1.SelectionColor = Color.Red;
richTextBox1.Select(401, 100);
richTextBox1.SelectionColor = Color.Blue;

bpzone
سه شنبه 24 فروردین 1389, 14:52 عصر
کسی از دوستان ایده ای نداره ؟

Marzieh_A
چهارشنبه 25 فروردین 1389, 00:25 صبح
اول richtextbox رو مقدار دهی کن بعد قسمتهایی که می خوای رنگی کنی select کن.

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

bpzone
چهارشنبه 25 فروردین 1389, 07:54 صبح
مشکل اینجا هست که نمی شه اول تمام داده ها رو وارد کنم و بعد این کار رو انجام بدم
چون که این داده ها هر ثانیه به برنامه اضافه میشه و من باید همون لحظه که اطلاعات رو اضافه می کنم ، تغییر رنگ هم بدم :افسرده: