Užitečné komponenty pro Delphi a C++ Builder, díl 4.

Chcete-li naprosto změnit vzhled své aplikace a přizpůsobit si ji zcela k obrazu svému, pak vám jistě dobře poslouží komponenta, kterou si dnes představíme. Dále si ukážeme komponentu, která dokáže velmi rychle zpracovávat data. Milion položek ve stromové struktuře je pro ni úplná lahůdka a otázka mžiku.
CoolForm

Pokud patříte mezi hračičky, kteří si vždycky vyšperkují design svých aplikací k dokonalosti, možná se vám bude hodit tato komponenta. Ať se budete snažit sebevíc, s běžnými vizuálními prvky, které Delphi nebo C Builder nabízejí, moc uživatele neohromíte. Žádný Winamp z nich zkrátka nevykouzlíte. Pokud však toužíte právě po tom, aby vaše aplikace vypadala zcela jinak, než je obvyklé, můžete použít právě komponentu CoolForm. Co vlastně umí? Pomocí ní si můžete vytvořit formulář opravdu libovolného tvaru a parametrů.

Postup je vlastně velice jednoduchý. Nejprve si vytvoříte v nějakém grafickém editoru design, který požadujete. Na běžný formulář umístíte komponentu CoolForm a do ní vytvořený obrázek načtete. Poté jen nastavíte několik málo parametrů, jako je například průhlednost, či zda je možno formulářem pohybovat uchopením za jeho libovolnou část, protože po spuštění samozřejmě zmizí klasický titulkový pruh. Proto také nesmíte zapomenout na tento vylepšený formulář přidat vlastní tlačítka, která zajistí jeho uzavření (ukončení aplikace) či minimalizaci a podobně. Po spuštění se již objeví pouze ten formulář, který jsme si nakreslili, přesně v tom tvaru, jaký obrázek má. Nic víc, nic méně. Pokud si například jako obrázek zvolíte fotku nějaké slečny (stejně jako v demoaplikaci dodávané s komponentou), bude mít formulář přesně podobu této fotky. Pochopitelně je nutné zvolit takový obrázek, který má nějaký jednolitý barevný podklad, který bude poté zprůhledněn.

I když tato komponenta nenabízí takový komfort, jako některé jiné, které se zabývají přímo skinováním formulářů, její naprosto jednoduché ovládání a funkčnost bude většině z vás dokonale postačovat. Společně s touto komponentou se v tomto minibalíku nachází též komponenty CoolButton a TransparentMemo, které mají podobné zaměření pro dané objekty.

Jako obvykle, vše dostanete včetně zdrojových kódů a zdarma. I když zde bych se měl malinko opravit. Komponenta není docela tak freeware. Pro osobní použití ano, to ji můžete používat bez omezení. Pokud ji ovšem hodláte využít v komerční aplikaci, nejedná se již o freeware, ale o tzv. beerware. :) Že tento pojem neznáte? Je to jednoduché – prostě v případě použití v komerčních aplikacích musíte autorovi, kterým je Tim Lawrenz, zaslat 20 lahví piva nebo peníze na ně.

A nezapomeňte, že design tvoří jen malou část samotné aplikace (alespoň většinou). Nejdůležitější je, aby vám program správně fungoval, takže se nenechte příliš unést tvorbou vzhledu a myslete též na samotné programování. :)

WWW
verze: 1.6
Dephi 3,4,5,6 (186 kB)
C++ Builder: ??

Virtual Treeview

Občas je potřeba zobrazit nějaká data v tzv. stromové struktuře. Namátkou třeba výpis souborů a adresářů v Průzkumníku a dalších programech. Je to poměrně rozšířená a často používaná metoda, protože je také poměrně názorná a není obtížná na implementaci.

Pro malé množství dat a jednoduché úlohy vám jistě klidně postačí běžná komponenta TreeView, která je v Delphi obsažena. Kdo však někdy zkoušel použít tuto komponentu a jí podobné (např. ListView a další) pro větší množství dat, nebo dokonce pro extrémní množství dat v řádech tisíců až miliónů položek, velmi brzo asi přišel na to, že rychlost práce je totálně zoufalá. Tyto komponenty prostě nejsou na větší množství dat určeny, s tím se nedá nic dělat. Pokud však přesto potřebujete s velkým množstvím záznamů pracovat, ale zároveň se chcete vyhnout práci s databází a nebo prostě z nějakého jiného důvodu potřebujete stromovou strukturu použít, je komponenta Virtual Treeview přesně to, co potřebujete.

Co tedy vlastně umí? Její největší přednost a důvod tak dlouhého úvodu je v tom, že je opravdu velmi rychlá. Její vnitřní struktura je postavena na jiném základu než běžné komponenty tohoto typu (jako je již zmiňovaná standardní TreeView), takže je schopna zpracovávat velké množství dat za velmi krátký čas. Podle údajů autora (které jsem sice přesně nepřeměřoval, ale proč mu nevěřit) trvá na dnes průměrném počítači – autor měřil na dvojitém PII na 350 MHz pod Windows NT – přidání 1 milionu větví do stromu kolem 7 sekund. Jakmile je již takto komponenta zinicializována a systém připraven, další opětovné přidání či smazání trvá již jen kolem 2 sekund. To je v porovnání se standardní komponentou pořádný rozdíl.

Mezi další výhody patří snaha o maximální šetření paměti a v neposlední řadě je to rychlý přístup ke všem položkám. Opět podle autora trvá jeden průchod stromem s milionem větví asi 550 ms, což je vynikající výsledek. Další výbornou vlastností je též schopnost načtení požadovaných dat do stromu až v okamžiku, kdy jsou opravdu potřeba, takže se opět šetří paměť a zvyšuje rychlost.

Tak tolik asi k "vnitřku" komponenty. Kromě těchto rychlostních optimalizací došlo i k řadě vizuálních vylepšení. Kromě vlastních barev jednotlivých položek máte k dispozici též Checkboxy a RadioButtony, automatický scrolling a rozbalování položek, podporu Unicode znaků (a to i na bublinkovou nápovědu), animaci a řadu dalších vylepšení.

Práce je obdobná jako se všemi podobnými komponentami, takže se s ní snadno naučíte pracovat. Součástí nápovědy je též několik příkladů a v případě nejasností si můžete stáhnout vzorové aplikace se zdrojovými kódy. A samozřejmě, jak je v tomto seriálu zvykem, vše je zdarma včetně zdrojových kódů.

WWW
verze: 2.0
Delphi 4 a výše (489 kB)
C++ Builder 4 a výše (489 kB)

Diskuze (4) Další článek: Kolik lidí má u nás počítač?

Témata článku: Software, Programování, Download, Unicode, Běžná aplikace, Podobné parametry, Libovolná aplikace, Libovolný kód, DEL, Podobné množství, Komp, Požadovaná rychlost, Extrémní rozdíl, Vytvořený obrázek, Strom, Krátká animace, Jednoduchý tvar, Komponenta, Díl, Vnitřní struktura, Extrémní množství, Používaná metoda


Určitě si přečtěte

Nejlepší notebooky do 10 000 korun: Co má ještě smysl kupovat. A co ne?

Nejlepší notebooky do 10 000 korun: Co má ještě smysl kupovat. A co ne?

** Notebooky s cenou do deseti tisíc korun jsou plné kompromisů ** Existuje několik modelů dobře použitelných pro nenáročné použití ** Vhodnou alternativou jsou tablety nebo repasované počítače

David Polesný | 94

David Polesný
Jak vybrat notebookNotebooky
Co je to UWB? Nová technologie zastoupí Wi-Fi, Bluetooth i NFC a slibuje velké věci

Co je to UWB? Nová technologie zastoupí Wi-Fi, Bluetooth i NFC a slibuje velké věci

** V nových mobilech se začíná objevovat tajemná zkratka UWB ** Jde o další technologii, jak navzájem propojit různá zařízení ** Oproti Wi-Fi a Bluetooth má řadu výhod

Lukáš Václavík | 36

Lukáš Václavík
UWBIoTTechnologie
Vybíráme nejlepší monitory: Od úplně levných až po displeje na rozmazlování očí

Vybíráme nejlepší monitory: Od úplně levných až po displeje na rozmazlování očí

** Vybrali jsme nejlepší monitory na práci i pořádné hraní ** Nejlevnější monitor s kvalitním panelem nestojí ani tři tisíce ** Rozlišení 4K a větší obrazovka už není nedostupný luxus

David Polesný | 30

David Polesný
Monitory
Google chystá funkci, která z chytrého Gmailu udělá hloupý Gmail
Lukáš Václavík
SoukromíGmailGoogle
26 užitečných rozšíření pro Chrome: Naučte prohlížeč nové věci

26 užitečných rozšíření pro Chrome: Naučte prohlížeč nové věci

** Prohlížeč Chrome obsahuje širokou škálu funkcí, neumí ale všechno ** Jeho schopnosti můžete rozšířit pomocí rozšíření ** Vybrali jsme pro vás zajímavé a užitečné doplňky

Karel Kilián | 44

Karel Kilián
Doplňky do prohlížečeChromeProhlížeče
Micro:bit V2: Tuto destičku plnou čipů dokáže naprogramovat i vaše babička

Micro:bit V2: Tuto destičku plnou čipů dokáže naprogramovat i vaše babička

** Chcete se teď hned naučit programovat čipy? ** Nechcete nic instalovat a číst zdlouhavé manuály? ** Naprogramujeme si Micro:bit, který zahraje Tichou noc

Jakub Čížek | 33

Jakub Čížek
Pojďme programovat elektronikuProgramování pro děti
Jak v prohlížeči vypnout oznámení zasílaná webovými stránkami

Jak v prohlížeči vypnout oznámení zasílaná webovými stránkami

** Obtěžují vás neustálé dotazy webů, zda chcete zobrazovat oznámení? ** Můžete je zakázat, a to jak kompletně, tak i pro jednotlivé stránky ** Připravili jsme návody pro Chrome, Firefox, Edge a Operu

Karel Kilián | 11

Karel Kilián
Jak na InternetTipyProhlížeče

Aktuální číslo časopisu Computer

Jak prodloužit výdrž notebooku

Velké testy: gamepady a inkoustové tiskárny

Důkladný test Sony Playstation 5