Компонента RichTextBox

RichTextBox је компонента која се у Toolbox-y налази у категорији Common Controls. Компонента RichTextBox је јако слична компоненти TextBox. Значи, ова компонента такође служи и за унос текста са тастатуре и за исписивање неког текста који се одређује помоћу програма. Разлика између ове компоненте и компоненте TextBox је у томе што је компонента RichTextBox предвиђена за уношење и иписивање текста већег обима, док је TextBox компонента предвиђена за унос углавном једнолинијског текста и ређе текста у неколико линија. Када је ова компонента у жижи у њеном оквиу трепери курсор.

Ове две компоненте имају јако велики број заједничких својстава, баш зато што постоји велика сличност између њих.

Својства која се наjчешће користе:

Text je својство које служи за исписивање текста који ће да стоји у RichTextBox-у. Међутим, у већини случајева је потребно да ова компонента буде празна, тако да у пољу поред својства Text не треба да стоји ништа.

(Name) је својство које представља име компоненте које се користи у коду како би се идентификовала та компонента (тј. објекат). Сваки RichTextBox аутоматски добија име и то према редоследу додавања форми richTextBox1, richTextBox2, richTextBox3 и тако даље. Ова имена се могу променити помоћу овог својства, али ми ћемо радити са овим већ унапред задатим именима и нећемо их мењати.

Back Color је својство које служи за промену боје позадине RichTextBox-a. Начин на који се то ради је идентичан начину на који се мења боја позадине TextBox-a.

Border Style својство има три понуђене опције које пружају различите изгледе ивица RichTextBox-a.

Cursor је својство које нуди различите изгледе курсора. Када пређемо мишем преко RichTextBox-a, курсор ће попримити изабрани изглед.

Detect Urls je својство које служи за детекцију URL адреса и аутоматски их формира као линкове.

Font је својство помоћу кога се може изабрати врста слова, начин исписа, величина слова текста који се појављује у RichTextBox-у. Подсвојства се могу видети када се кликне на симбол . Та подсвојства се директно могу мењати у оквиру Properties Windows-a.

Fore Color je својство које служи за промену боје текста који се појављује у RichTextBox-у.

Multiline је својство које омогућава да се текст исписује у више редова уместо само у једном.

Scroll Bars има смисла користити само ако је у својству Multiline изабрана опција True и у овом својству се могу изабрати опције за скроловање текста горе-доле или лево-десно или и једно и друго. Користи се када се текст који је исписан у RichТextBox-у не може видети у целости.

Size је својство помоћу кога се одређују димензије RichTextBox-a изражене у пикселима. Састоји се од два подсвојства: Width, које служи за подешавање ширине и Height, које служи за подешавање висине.

Tab Index је својство помоћу кога се одређује редослед по коме ће се, помоћу Tab тастера на тастатури, жижа померати са једне компоненте на другу компоненту.

Tab Stop је својство помоћу кога се одређује да ли корисник може да помера жижу са једне компоненте на другу помоћу Tab тастера. Уколико је изабрана опција True, жижа се може померати са компоненте на компоненту на овај начин, а ако је изабрана опција False, жижа се не може померати са компоненте на компоненту на овај начин.

Visible је својство помоћу кога се утврђује да ли је компонента видљива или сакривена. Уколико је изабрана опција True, компонента ће бити видљива када се покрене програм, а уколико је изабрана опција False, компонента се неће видети када се покрене програм, односно биће сакривена.

Задавање својстава преко кода


private void Form1_Load(object sender, EventArgs e)
{
    //Posto ce najcesce biti potrebno da RichTextBox bude prazan
    //onda cemo pomocu ove linije koda to i postici. Izmedju
    //znakova navodnika nista ne pisemo.
    richTextBox1.Text = "";
            
    //Promena boje pozadine RichTextBox-a
    richTextBox1.BackColor = Color.Thistle;

    //Promena izgleda ivica
    richTextBox1.BorderStyle = BorderStyle.Fixed3D;

    //Promena izgleda kusora
    richTextBox1.Cursor = Cursors.IBeam;

    //Detekcija linkova
    richTextBox1.DetectUrls = true;

    //Promena boje teksta koji ce biti ispisan u RichTextBox-u
    richTextBox1.ForeColor = Color.Yellow;

    //Omogucava unos teksta u vise redova
    richTextBox1.Multiline = true;

    //Zadavanje visine 
    richTextBox1.Height = 50;

    //Zadavanje sirine 
    richTextBox1.Width = 150;

    //Zadavanje redosleda po kome ce RichTextBox da bude u zizi
    richTextBox1.TabIndex = 1;

    //Omogucava da se pomocu Tab tastera ziza premesti na ovu
    //komponentu
    richTextBox1.TabStop = true;

    //RichTextBox ce biti vidljiv kada se pokrene program.
    richTextBox1.Visible = true;
}

На почетку је компонента RichTextBox изгледала као што је приказано на Слици 3.1. После писања кода и покретања програма, RichTextBox изгледа као што је приказанo на Слици 3.2. У њему смо откуцали текст и видимо да је текст жуте боје, а позадина розе.

Слика 3.1. Изглед компоненте RichTextBox пре покретања програма Слика 3.2. Изглед компоненте RichTextBox након покретања програма