HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Függőleges címsor készítése


Példaprogram letöltése

4358 bájt

Számos alkalmazásban találkozhatunk függőleges címsorral. Ebben a példában mi is készítünk egy komponenst, amely segítségével Form-jaink bal oldalán megjeleníthetünk egy tetszőleges feliratot. Beállíthatjuk a címsor és a szöveg színeit, a címsor vastagságát, valamint a szöveg méretét.

A mellékelt példaprogram megnyitása előtt a VertTitleBar.pas-ban lévő komponenst telepítenie kell a Delphi alá. Ehhez válassza a Component - Install Component menüpontot.
A komponenst el kell helyeznünk a Form-on. A Form OnPaint és OnResize eseményeiben meg kell hívnunk a komponens Repaint metódusát, így a címsor a Form újrarajzolása és átméretezése után is látható marad.
A komponens a címsort automatikusan a Form bal oldalán jeleníti meg. Magasságát a Form mérete határozza meg, így az adott. Szélességét a BarWidth property értékének módosításával állíthatjuk be.
A megjelenítendő feliratot a Caption property-ben állíthatjuk be. A felírat színét a FontColor, a címsor színét a BarColor értéke határozza meg.
A FontSize property-ben megadhatjuk a felirat betűméretét.
A komponens elkészítése
Komponensünket a TComponent osztályból származtatjuk. Működésének kulcsa a Repaint metódus.
A címsort a szülőobjektum Canvas tulajdonságát felhasználva rajzoljuk meg. A szülő Form-ot az FOwner változón keresztül tesszük elérhetővé.
A felirat betűtípusát a TLogFont osztály segítségével állítjuk be. Először meghatározzuk a szülő Form Canvas-ából a Form betűtípusát.
GetObject((FOwner as TForm).Canvas.Font.Handle,SizeOf(LogFont),@LogFont);
A Font tulajdonságait úgy állítjuk be, hogy az 90 fokkal el legyen forgatva, balra. Így a felirat teteje kerül a Form bal oldalához.
with LogFont do begin
  lfEscapement:=90*10;
  lfOrientation:=90*10;
  ...
Beállítjuk a Form betűtípusát és a használandó színeket.
with (FOwner as TForm).Canvas do begin
  Font.Handle:=CreateFontIndirect(LogFont);
  Font.Color:=FFontColor;
  Brush.Color:=FBarColor;
end;
A Form ClientRect tulajdonságán keresztül elérhetjük a használható Form terület méretét, amelyen rajzolunk egy színes téglalapot, majd arra ráírjuk a feliratot.
(FOwner as TForm).Canvas.FillRect(r);
DrawText((FOwner as TForm).Canvas.Handle,PChar(FCaption),-1,r,DT_BOTTOM or DT_SINGLELINE);

Cikksorozat

#IDKategóriaCikk címeSorozat
3643DelphiFormEditor1. rész
3689DelphiProject és modul információk2. rész
3719DelphiMegnyitás, mentés3. rész
3749DelphiKódszerkesztő4. rész
3778DelphiForráskód írása, olvasása5. rész
3809DelphiInterfész a kódszerkesztő ablakhoz6. rész
3839DelphiKijelölt blokkok7. rész
3869DelphiA buffer beállításai8. rész
3899DelphiKörnyezeti és Project opciók9. rész
3929DelphiKurzor a kódszerkesztőben10. rész
3959DelphiKeresés és csere beállításai11. rész


Könyv
Ez a cikk megtalálható ebben a könyvben: Delphi Software Offline 2003 évkönyv 325. 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 |