Kezdőlap
Cikkek
Tallózó
Cikksorozatok
Összes cikk
Fórum
Fórum kezdőlap
Archívum
Hírlevél
Letöltés
Állás, munka
Webszolgáltatás
Megtekintés
Aktuális TV műsor
TV csatornák listája
Könyvek
Software Offline évkönyvek
Delphi 1999
Delphi 2000
Delphi 2001
Delphi 2002
Delphi 2003
Visual Studio.NET C# 2001
Visual Studio.NET C# 2002
Visual Studio.NET C# 2003
Windows 2001
Windows 2002
Windows 2003
Havilapok
Keresés
Oldaltérkép
Impresszum
Bejelentkezés
E-mail:
Jelszó:
|
Regisztráció
|
Jelszó?
|
Komponens oldalarány megtartása átméretezéskor
Példaprogram letöltése
5131 bájt
Bizonyos vizuális komponenseknél fontos lehet, hogy az átméretezéskor az oldalak aránya ne változzon, például a szélesség és magasság mindig megegyezik. Ebben a példában megnézzük, hogy hogyan lehet ezt megoldani.
A mellékelt példaprogram megnyitása előtt a SquareControl.pas-ban lévő komponenst telepítenie kell a Delphi alá.
A feladatban egy olyan komponenst készítünk a TCustomControl osztályból származtatva, amelynek szélessége és magassága minden esetben meg kell, hogy egyezzen. Ebben az esetben felmerülhet néhány kérdés, például hogy melyik méret lesz a mérvadó, vagyis melyikhez igazítjuk a másikat. Erre valószínűleg az alábbi szabályok alkalmazása tűnik a legmegfelelőbb megoldásnak:
ha csak a szélességet változtatjuk, akkor a magasságot a beállított szélességre módosítja;
ha csak a magasságot változtatjuk, akkor a szélességet a beállított magasságra módosítja;
ha mindkét irányban változik a méret, akkor a nagyobb változtatás lesz a mérvadó.
Hogy a méretváltozás mértékét ellenőrizni tudjuk, nyilván az előző méretet el kell tárolni. Ehhez egy globális változót használunk (FSize). Mivel esetünkben a szélesség és magasság megegyezik, elég egy változó, viszont ha az oldalak aránya nem 1:1, akkor két változó kell, és a méretváltozás mértékét nem pixelben, hanem százalékban kell összehasonlítani.
Az ellenőrzést legcélszerűbb a Resize eljárásban elvégezni, mivel ez mindig automatikusan meghívódik, amikor a komponens mérete megváltozik.
Cikksorozat
#ID
Kategória
Cikk címe
Sorozat
1018
Delphi
Vonalkód készítő komponens
1. rész
1028
Delphi
Vonalkód nyomtatása a QuickReport-al
2. rész
Könyv
Ez a cikk megtalálható ebben a könyvben:
Delphi Software Offline 2002 évkönyv 121. 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!
A feldolgozás folyamatban...
Megszakítás
Copyright © 1999-
2012
Animare Software Kft.
Minden jog fenntartva!
| Készült:
Animare Stúdió
|
Adatvédelem
|
Kapcsolat
|