HIK Elektronikus Felsőoktatási Tankönyv- és Szakkönyvtár
A Kempelen Farkas Felsőoktatási Digitális Tankönyvtár/vagy más megjelenítő által közvetített digitális tartalmat a felhasználó a szerzői jogról szóló 1999. évi LXXVI. tv. 33. paragrafus (4) bekezdésében meghatározott oktatási, illetve tudományos kutatási célra használhatja fel. A felhasználó a digitális tartalmat képernyőn megjelenítheti, letöltheti, arról elektronikus adathordozóra vagy papíralapon másolatot készíthet, adatrögzítő rendszerében tárolhatja. A Kempelen Farkas Felsőoktatási Digitális Tankönyvtár/vagy más megjelenítő weblapján található digitális tartalmak üzletszerû felhasználása tilos, valamint kizárt a digitális tartalom módosítása és átdolgozása, illetve az ilyen módon keletkezett származékos anyag további felhasználása.

16.30. RichTextBox

Reprezentál egy Windows rich text box komponenst.

Észerevételek:

A RichTextBox komponens megengedi a felhasználónak, hogy belépjen és szerkessze a szöveget, ami mellett még több, egymástól különböző formátumot is engedélyez, mint egy mezei TextBox komponens. A szöveget kijelölhetjük közvetlenül a komponensben, vagy be tölthetjük egy Rich Text Format (RTF) fájlból, vagy egy egyszerű text fájlból. A komponensen belüli szöveg lehet egyszerű karakteres vagy paragraph formátumú.

A RichTextBox komponens ad egy számot a tulajdonságairól, amit fel tudsz használni a komponensen belül, annak bármelyik részén, a szövegen, hogy alkalmazhassunk egy formátumot. Ahhoz, hogy megváltoztassuk a szöveg formátumát, először ki kell jelölni. Csak a kijelölt szövegben tudjuk megváltoztatni a karakter és paragraph formátumot. A SelectionFont tulajdonság lehetőséget biztosít számunkra, hogy a szöveg bold vagy italic legyen. Még arra is használhatjuk, hogy meghatározzuk a méretét vagy a betűképet. SelectionColor tulajdonsággal a szöveg színe állítható be. Gyorslista készítéséhez, használjuk a SelectionBullet tulajdonságot, beállíthatjuk a paragraph formátumot a SelectionIndent, SelectionRightIndent, és SelectionHangingIndent tulajdonságokkal.

A RichTextBox komponens olyan metódusokat is ad amelyek funkcióival tudsz megnyithatunk vagy menthetünk fájlokat. A LoadFile metódus megengedi, hogy megfelelő RTF vagy ASCII szöveget, tartalmazó fájlokat nyissunk meg a komponensbe. Ezen felül még olyan fájlokat is meg tudsz nyitni, amiket már más megnyitott velünk egy időben. A SaveFile metódus megengedi, hogy megfelelő RTF vagy ASCII fájl formátumban mentsünk el szövegeket. Hasonló módon, mint a LoadFile metódus, a SaveFile metódust is tudjuk arra használni, hogy egy megnyitott fájlba menthetünk. A RichTextBox komponens olyan lehetőséget is ad, hogy stringeket keressünk a szövegben. A Find metódus is arra is lehetőséget biztosít, hogy hasonló stringeket keress a szövegben.

Az is megvalósítható, hogy adatot tároljon a memóriában.

Ha a komponensen belüli szöveg tartalmaz egy linket, mondjuk egy web sitera, akkor használhassuk a DetectUrls tulajdonságot, hogy megfelelően jelenjen meg a link a komponens szövegében. Ezután a LinkClicked eventtel elérhetjük, hogy ez működjön is. A SelectionProtected tulajdonsággal engedélyezhetjük azt, hogy a szöveg a komponensen belül védve legyen a felhasználók manipulációival szemben. Ezzel a levédett szöveggel a komponensen belül, hivatkozhatunk a Protected eventre, amivel közölhetjük a mezei felhasználóval, hogy ez a szövegrész számára nem módosítható, ha módosítani akarja.

Alkalmazásokat, amelyeket már a TextBox komponens is használ, könnyen bele lehet építeni a RichTextBox komponensbe, azonban a RichTextBox komponens nem tartalmazza a TextBox 64k karakter kapacitás limitjét.

Példa:

A bemutatandó példában készítünk egy RichTextBox komponenst, ami beolvas egy RTF fájlt, majd megkeresi az első helyet, ahol a "Text" kifelyezés jelen van. Ezután a program megváltoztatja a kijelölt szövegrész betű típusát, méretét, színét, majd ezekkel a változtatásokkal visszamenti az eredeti fájlba. Végezetül a megoldásban hozzáadja a Form felületéhez a RichTextBoxot.

public void CreateMyRichTextBox()

{

RichTextBox richTextBox1 = new RichTextBox();

richTextBox1.Dock = DockStyle.Fill;

richTextBox1.LoadFile("C:\\MyDocument.rtf");

richTextBox1.Find("Text", RichTextBoxFinds.MatchCase);

richTextBox1.SelectionFont = new Font("Verdana", 12, FontStyle.Bold);

richTextBox1.SelectionColor = Color.Red;

richTextBox1.SaveFile("C:\\MyDocument.rtf", RichTextBoxStreamType.RichText);

this.Controls.Add(richTextBox1);

}

Néhány fontosabb Tulajdonság:

Dock

Hogy hol helyeszkedjen el a formon belül

 

AutoSize

Automatikusan beállítja a komponens méretét font változtatás után

 

Enabled

Meghatározza, hogy lehet e módosítani a tartalmát

 

BackGroundImage

Háttérkép

 

BackColor

Háttér szín

 

Bounds

Nem kliens tartalmának a mérete

 

ClientRectangle

Annak a téglalapnak a tulajdonságait lehet beállítani, amit a kliens használ

 

ClientSize

A felhasználó által használható terület hosszúságát és szélességét lehet beállítani

 

ContextMenu

Beállítja a komponens gyorsindító menüjét

 

Controls

Tartalmazza a komponensen belül használható komponenseket

 

Cursor

Az egér mutató kinézete amíg a komponens felett van

 

HasChildren

Beállítja a komponenst ha több gyermek származik belőle

 

Height

Magasság

 

Width

Szélesség

 

Left

Balról behúzás

 

Right

Jobbról behúzás

 

Top

Felülről

 

Bottom

Alulról

 

Size

Méret

 

Stb….

……