HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

TRichEdit komponens kibővítésének lehetőségei


TRichEdit bővítése 1. rész

Példaprogram letöltése

4344 bájt

Most induló sorozatunkban annak járunk utána részletesen, hogy milyen rejtett képességei vannak a TRichEdit komponensnek, melyeket felhasználhatunk Delphi-s alkalmazásainkban.
Sorozatunk első részében azt vizsgáljuk, hogy hogyan használhatunk különféle formájú aláhúzásokat (hullámos, pontozott, stb.), különféle színekkel a TRichEdit komponensben.

Először azt kell tudnunk, hogy ezeket az extra lehetőségeket milyen esetekben használhatjuk ki. Aktuálisan a RichEdit Windows-os kontrol a 3-as verziójánál tart. Ez a verzió támogat minden olyan funkciót, melyeket sorozatunkban használni fogunk. Hogy melyik verzió van jelen egy adott gépen, az az operációs rendszertől függ, melyeket az alábbi táblázat foglalja össze:
Rich Edit verzió DLL állomány neve
1.0 Riched32.dll
2.0 Riched20.dll
3.0 Riched20.dll
Operációs rendszerek:
Operációs rendszer RichEdit verzió
Windows XP 3.0 és 1.0 emulátor.
Windows Me 1.0 és 3.0.
Windows 2000 3.0 és 1.0 emulátor.
Windows NT 4.0 1.0 és 2.0.
Windows 98 1.0 és 2.0.
Windows 95 1.0., de rendelkezésre áll a Riched20.dll Windows 95-re melyet külön kell telepíteni.
RichEdit 2.0 csak az egyvonalas, duplavonalas, illetve a szó aláhúzásokat támogatja.
RichEdit 3.0 támogatja már az összes többi elérhető aláhúzás stílust is.
Példánkban készítünk egy eljárást SetUnderline névvel, mely egy megadott RichEdit komponensben aktuálisan kijelölt szöveget egy megadott aláhúzás stílussal, általunk választott színben megformáz.
procedure SetUnderline(re: TRichEdit; underline: word; color: word);
var
  f: CHARFORMAT2;
begin
Formázás kivitelezéséhez egy EM_SETCHARFORMAT üzenetet kell küldenünk a RichEdit komponensnek, mely tartalmaz egy CHARFORMAT2 struktúrát megfelelően feltöltött adatokkal.
  FillChar(f, SizeOf(CHARFORMAT2), 0);
  with f do begin
    cbSize:=SizeOf(CHARFORMAT2);
A struktúra dwMask mezőjében megadjuk a CFM_UNDERLINETYPE konstanst, mellyel azt érjük el, hogy a bUnderlineType mezőben megadott értéket figyelembe fogja venni a RichEdit komponens.
    dwMask:=CFM_UNDERLINETYPE;
A bUnderlineType mező bájt típusú. Ennek alsó négy bitje adja meg az aláhúzás stílusát, míg a felső négy bájt határozza meg az aláhúzás színét.
    bUnderlineType:=underline or color;
Végül már csak az üzenetet kell elküldenünk a RichEdit komponensnek.
    re.Perform(EM_SETCHARFORMAT, SCF_SELECTION, Longint(@f)); 
  end; 
end; 
Mivel a formázásunk mindig az aktuálisan kijelölt szöveg területre vonatkozik, így aláhúzás előtt meg kell adnunk, hogy mi legyen kijelölve.
procedure TForm1.FormCreate(Sender: TObject);
begin
  RichEdit1.SelStart:=0;
  RichEdit1.SelLength:=23;
Ezt követően hívhatjuk a SetUnderline eljárásunkat, első paraméterként a RichEdit1 komponenst átadva, másodikként egy tetszőleges aláhúzás stílust megadva, míg harmadikként az aláhúzás színét.
end;

Cikksorozat

#IDKategóriaCikk címeSorozat
1488DelphiMS SQL tárolt eljárások1. rész
1499DelphiMS SQL tárolt eljárások2. rész
1507DelphiMS SQL tárolt eljárások3. rész
1519DelphiMS SQL tárolt eljárások4. rész
1526DelphiMS SQL tárolt eljárások5. rész
1537DelphiMS SQL tárolt eljárások6. rész
1546DelphiMS SQL tárolt eljárások7. rész
1553DelphiMS SQL tárolt eljárások8. rész
1564DelphiMS SQL tárolt eljárások9. rész
1573DelphiMS SQL tárolt eljárások10. rész
1582DelphiMS SQL tárolt eljárások11. rész
1591DelphiMS SQL tárolt eljárások12. rész
1600DelphiMS SQL tárolt eljárások13. rész
1609DelphiMS SQL tárolt eljárások14. rész
1617DelphiMS SQL tárolt eljárások15. rész
1626DelphiMS SQL tárolt eljárások16. rész


Könyv
Ez a cikk megtalálható ebben a könyvben: Delphi Software Offline 2002 évkönyv . oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |