نمایش نتایج 1 تا 10 از 10

نام تاپیک: رنگي كردن يك كلمه؟

  1. #1

    رنگي كردن يك كلمه؟

    من با اين كد مي خواهم علامت}{ را رنگي كنم ولي وقتي رنگي ميشه ادامه كلمات هم رنگي ميشه در صورتي كه فقط مي خواهم اين علامتها رنگي بشه چه تغييري بدم. مرسي از توجه شما

    private void richTextBoxCod_TextChanged(object sender, EventArgs e)
    {
    int shomare3 = CountStringOccurrences(rich1, "{"); // // 1شمردن پرانتز
    int shomare4 = CountStringOccurrences(rich1, "}");// // شمردن پرانتز2
    ///.///......


    if (shomare3 - shomare4 > 0)
    {
    this.ColorParantz("{", Color.Orange, 0);

    }
    else if (shomare3 - shomare4 < 0)
    {


    this.ColorParantz("}", Color.Red, 0);// // رنگي كردن
    }
    else
    {
    this.ColorParantz("}", Color.Black, 0);
    this.ColorParantz("{", Color.Black, 0);


    }
    }

    private void ColorParantz(string word, Color color, int startIndex)///متد        {


    if (this.richTextBoxCod.Text.Contains(word))
    {
    int index = -1;
    int selectStart = this.richTextBoxCod.SelectionStart;


    while ((index = this.richTextBoxCod.Text.IndexOf(word, (index + 1))) != -1)
    {
    // this.richTextBoxCod.Select(0,1);
    this.richTextBoxCod.Select((index + startIndex), word.Length);
    this.richTextBoxCod.SelectionColor = color;
    this.richTextBoxCod.Select(selectStart, 0);
    this.richTextBoxCod.SelectionColor = Color.Black;
    }
    }
    }

  2. #2

    نقل قول: رنگي كردن يك كلمه؟

    سلام اگر نیاز نیست تعداد پرانتزهای باز و بسته با هم برابر باشند کد TextChanged رو اینجوری بنویسی کافیه:

    private void richTextBox1_TextChanged(object sender, EventArgs e)
    {
    string rich1 = richTextBox1.Text;
    int shomare1 = CountStringOccurrences(rich1, "("); // // 1شمردن پرانتز
    int shomare2 = CountStringOccurrences(rich1, ")");// // شمردن پرانتز2

    if (shomare1 > 0)
    {
    this.CheckKeyword("(", Color.Red, 0);
    }
    if (shomare2 > 0)
    {
    this.CheckKeyword(")", Color.Red, 0);
    }
    }



    اما اگر لازمه بازای هر پرانتز باز یه پرانتز بسته وجود داشته باشه اینجوری بنویس:


    private void richTextBox1_TextChanged(object sender, EventArgs e)
    {
    string rich1 = richTextBox1.Text;
    int shomare1 = CountStringOccurrences(rich1, "("); // // 1شمردن پرانتز
    int shomare2 = CountStringOccurrences(rich1, ")");// // شمردن پرانتز2


    if (shomare1 > 0 && shomare1 == shomare2)
    {
    this.CheckKeyword("(", Color.Red, 0);
    this.CheckKeyword(")", Color.Red, 0);
    }
    }

  3. #3

    نقل قول: رنگي كردن يك كلمه؟

    جالب وقتي پرانتز رنگی میشه بعد از زدن حروف از روی کی برد مشکی است و مشکلی نیست ولی من یک باتن دارم مثل ماشین حساب وقتی روش کلیک می کنم علامت جمع روی رچباکس می یاد همراه پرانتز رنگی میشه ولی وقتی از روی کی برد می زنم درست است چرا؟کد باتن هم این می خوام مشکی باشه؟!
     richTextBoxCod.Text = richTextBoxCod.Text + " " + ((Button)sender).Text+ " ";

  4. #4

    نقل قول: رنگي كردن يك كلمه؟

    متوجه نشدم می خوای چکار کنی و مشکل چیه!

    یه همچین چیزی مد نظرتونه؟
    لینک
    آخرین ویرایش به وسیله Share & Learn : پنج شنبه 01 مرداد 1394 در 08:03 صبح دلیل: اضافه کردن لینک

  5. #5

    نقل قول: رنگي كردن يك كلمه؟

    از توجه شما بزرگواران خیلی ممنون
    به این برنامه نگاه کنید
    می خواهم وقتی + می زنم به هیچ وجه رنگی نشه و فقط کروشه ها تغییر رنگ پیدا کنند
    فایل های ضمیمه فایل های ضمیمه

  6. #6

    نقل قول: رنگي كردن يك كلمه؟

    چطور مي تونم بهش بگم تمام كاراكترها را بغيير از} و{ را بگير و رنگش مشكي كن؟!

  7. #7

    نقل قول: رنگي كردن يك كلمه؟

    همه مشکی هستن که!

  8. #8

    نقل قول: رنگي كردن يك كلمه؟

    داخل رچباکس رنگی هستند دیگه؟؟؟
    عکس های ضمیمه عکس های ضمیمه

  9. #9

    نقل قول: رنگي كردن يك كلمه؟

    سلام
    ابتدا این فضای نام رو به فرمتون اضافه کنید
    using System.Text.RegularExpressions;


    با استفاده از این متدی که نوشتم ، هر کاراکتر یا کلمه ای رو که دلتون خواست در کنترل richTextbox رنگی کنید.

    private void Colorize(RichTextBox sender, Color textColor, Color highlightColor)
    {
    //تعریف کاراکترها یا کلماتی که باید هایلایت شوند
    List<string> reservedWords = new List<string>(new String[] {"{","}"});


    int defaultSelection = sender.SelectionStart;


    foreach (var item in reservedWords)
    {
    MatchCollection matchCollection = Regex.Matches(sender.Text, item.ToString());


    foreach (Match matchItem in matchCollection)
    {
    sender.SelectionStart = matchItem.Index;
    sender.SelectionLength = matchItem.Length;
    sender.SelectionColor = highlightColor;
    }


    sender.SelectionStart = defaultSelection;
    sender.SelectionLength = 0;
    sender.SelectionColor = textColor;
    }
    }


    نحوه فراخوانی و استفاده هم به اینصورت هست (برای مثال در رویداد TextChanged مربوط به richTextBox1)

    private void richTextBox1_TextChanged(object sender, EventArgs e)
    {
    Colorize(richTextBox1,Color.Black, Color.Red);
    }


    * پارامتر اول ، نام کنترل - پارامتر دوم رنگ متن عادی و پارامتر سوم رنگ متن هایلایت شده


    موفق باشید.
    قوانین سایت برنامه نویس [ به سوالات از طریق پیام خصوصی پاسخ داده نمی شود ]

  10. #10

    نقل قول: رنگي كردن يك كلمه؟

    ولي نمي دونم چرا عشقي كار ميكنه بازم اين علامت + رنگي ميشه؟!!فايل و عكسش را مي زارم كجاي كار اشتباه اصلا اين علامت } تو سيشارپ به عنوان كاراكتر مگه نيست!!!!شايد چيز ديگري هست كه از قلم انداختم يا راه ديگه اي داره هر نظري داريد بگيد شايد راهي پيدا كنم مرسي
    عکس های ضمیمه عکس های ضمیمه
    • نوع فایل: jpg 12.jpg‏ (9.8 کیلوبایت, 26 دیدار)
    فایل های ضمیمه فایل های ضمیمه

تاپیک های مشابه

  1. سوال: رنگي كردن يك خط در ميان سطرهاي گزارش
    نوشته شده توسط wolfstander در بخش Access
    پاسخ: 23
    آخرین پست: سه شنبه 21 فروردین 1403, 03:16 صبح
  2. سوال: رنگي كردن برچسب فيلد با استفاده از كد
    نوشته شده توسط abas1388 در بخش Access
    پاسخ: 1
    آخرین پست: سه شنبه 05 آبان 1388, 12:50 عصر
  3. رنگي كردن سطر در ريچ تكست باكس
    نوشته شده توسط amir-haghighi در بخش WPF
    پاسخ: 1
    آخرین پست: پنج شنبه 15 مرداد 1388, 17:24 عصر
  4. سوال: رنگي كردن كامند
    نوشته شده توسط abulfazl در بخش برنامه نویسی در 6 VB
    پاسخ: 2
    آخرین پست: شنبه 10 اسفند 1387, 17:45 عصر
  5. رنگي كردن يك كلمه
    نوشته شده توسط آرام جان گل در بخش طراحی وب (Web Design)
    پاسخ: 5
    آخرین پست: جمعه 10 آبان 1387, 11:32 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •