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

Dnes si představíme dvě komponenty, které umožňují velmi snadnou práci s ikonou aplikace na hlavním panelu vedle hodin. Tato ikonka, která obvykle zastupuje programy, jež neustále běží na pozadí (například antivir), může velmi snadno urychlit přístup k některým funkcím vaší aplikace a zároveň podávat užitečné informace.

Trayicons

Již podle názvu možná poznáváte, že se jedná vlastně o komponenty dvě. První se jmenuje CoolTrayIcon, druhá má název TextTrayIcon a každá může nabídnout malinko rozličné funkce. Nejprve tedy komponenta CoolTrayIcon.

Tato komponenta (nyní již ve verzi 4.0.2) nabízí kromě celkem obvyklých funkcí, které podobné komponenty mají, ještě několik drobných vylepšení navíc. Ukažme si tedy jako vždy některé základní vlastnosti a metody:

  • Icon: Tato vlastnost určuje ikonu, která se v hlavním panelu zobrazí. Má velikost 16x16 bodů a může mít 256 barev (podle verze systému, tedy konkrétně pod NT a 9x se zobrazí jen 16 barev). Pokud použijete soubor .ico, který obsahuje více ikon, komponenta si vybere tu první, a pokud nebude mít patřičné rozměry, sama je upraví. To bych ale nedoporučoval, protože výsledek pak nevypadá dobře. Lepší je, když si připravíte ikonu na míru.
  • IconVisible: Logická proměnná, která určuje, zda se ikona zobrazí či nikoliv.
  • Hint: Text, který se zobrazí jako bublinková nápověda po najetí myší na ikonku.
  • ShowHint: Myslím, že není třeba vysvětlovat – buď se nápověda zobrazí nebo ne.
  • PopupMenu: Zde si můžete nadefinovat menu, které se zobrazí při kliknutí na ikonu.
  • LeftPopup: Tímto parametrem určíte, zda chcete menu zobrazit jen "klasicky" přes pravé tlačítko a nebo také běžným kliknutím levým tlačítkem.
  • Enabled: Opět celkem běžný parametr snad všech komponent. Deaktivování ikonky se může hodit například při provádění nějaké funkce, jejíž průběh by mohlo narušit její opětovné vyvolání přes popupmenu.
  • IconList: Jedná se o běžný ImageList, který obsahuje množinu ikon, jež se poté dají použít k animaci (viz další parametry komponenty dále).
  • IconIndex: Právě "aktivní" (zobrazená) ikona při animaci.
  • CycleIcons: Tímto parametrem určíme, zda se má ikonka animovat (s využitím IconListu).
  • CycleInterval: Časový interval v milisekundách mezi změnou jednotlivých ikon.
  • DesignPreview: Pokud se chcete o výsledku svého snažení přesvědčit už v době návrhu, aktivujte tuto volbu.
  • MinimizeToTray: Tento parametr určuje, zda bude vaše aplikace při minimalizaci zmenšena "do ikony".
  • Refresh: Metoda, která překreslí ikonu. Vlastně by neměla být potřeba, ale někdy se může vyskytnout situace, kdy budete chtít ikonku sami "ručně" překreslit.
  • ShowBaloonHint: Zobrazí onen známý (a někdy pěkně otravný) "balónový hint" z Windows XP. Tato možnost nebude fungovat u starších systémů NT a 9x, měla by však být funkční pod ME/2000 a pochopitelně XP. Bohužel recenzi píši právě na systému NT, takže funkčnost prostě nemohu ověřit. Tento hint může mít vlastní titulek dlouhý až 64 znaků a samotný text nápovědy pak může mít až 255 znaků. Zobrazí se na 10-60 sekund, nebo dokud není deaktivován uživatelem či programově. Tolik slova autora, funkčnost si musíte ověřit sami.
  • HideBaloonHint: Touto metodou právě můžete programově "balónek" skrýt.
  • GetClientIconPos: Velmi zajímavá funkce, která vrací souřadnice, na nichž se nachází myš "uvnitř" ikony. Můžete tím pádem vytvořit několik různých událostí kliknutí myši v závislosti na tom, na kterou část ikony uživatel kliknul.
Vidíte, že funkcí a různých zajímavých vlastností je celá řada, takže se vám tato komponenta bude jistě hodit.

A nyní se pojďme ještě podívat na sesterskou komponentu – TextTrayIcon ve verzi 1.2.0.

Již z názvu je patrné, že půjde o nějaký text. A máte pravdu. Tato komponenta vám umožní zobrazit místo ikonek přímo dynamicky se měnící text nebo číselné hodnoty, vše dle vaší volby. Podívejme se na některé základní vlastnosti. Komponenta je odvozena z CoolTrayIcon, takže velká část vlastností je stejná. Ty nadstandardní, které právě souvisí s textem, si teď ukážeme:

  • Text: Celkem logicky je to parametr, který obsahuje text, zobrazovaný v ikoně. Je vycentrován horizontálně i vertikálně.
  • Font: Druh písma textu.
  • Color: Barva pozadí ikony.
  • Border: Tímto parametrem se dá zajistit, aby kolem ikony byl nakreslen rámeček 1 pixel silný v barvě, kterou určuje následující parametr.
  • BorderColor: Barva rámečku kolem ikony.
  • BackgroundIcon: Tímto parametrem můžete též určit ikonu na pozadí textu.
  • Options: Tato položka obsahuje parametry OffsetX, OffsetY a LineDistance, které vám umožní rolovat delší text, protože na malou plochu ikonky se stěží vejdou dvě písmena. Pomocí těchto parametrů ale můžete docílit plynulého rolování textu na všechny strany.

A to je vlastně všechno. Kombinací těchto dvou komponent můžete docílit v podstatě libovolného vizuálního efektu, který známe z ostatních aplikací, a animací, nebo se skrolováním textu v ikoně na hlavním panelu můžete opravdu slušně vyřádit. Vždy ale dbejte na to, aby zobrazované informace byly především zase jen informace. Blikající očička nebo jiné drobnůstky jsou sice na moment zábavné, ale uživatelé příliš nemají rádi velký počet ikon na hlavním panelu. Proto když už tam nějaká ikonka je, měla by mít alespoň svou funkci nebo zobrazovat užitečné informace.

Tyto dvě ikony jsou opět dodávány se zdrojovým kódem, instalace je jednoduchá (klasický dpk balíček) a je přiloženo i několik ukázkových aplikací. Autor Troels Jakobsen sice uvádí v helpu tuto adresu – http://www3.ewebcity.com/troels/delphi.asp – avšak v době psaní mi jaksi nefungovala, a proto přidávám přímý odkaz na stažení z našeho obvyklého zdroje.

www
verze: viz popis jednotlivých komponent
Delphi: 2-6
C++ Builder: 3-5

Váš názor Další článek: Neoficiální Mozilla 1.0

Témata článku: Software, Programování, Díl, DEL, Icon, Balónek, Různé znaky, Komponenta, Obvyklá funkce, Hlavní funkce, Běžný parametr, Komp


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

Čím nahradit WhatsApp: Vyberte si z 10 alternativních komunikátorů

Čím nahradit WhatsApp: Vyberte si z 10 alternativních komunikátorů

** Z WhatsAppu kvůli novým podmínkám utíkají tisíce uživatelů ** Čím nahradit populární aplikaci pro zasílání zpráv? ** Vybrali jsme pro vás 10 alternativních komunikátorů

Karel Kilián | 112

Karel Kilián
KomunikaceWhatsAppInstant Messaging
Vodafonu se zhroutila kabelovka. Síť bývalého UPC má výpadky
Lukáš Václavík
VodafoneUPC
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 | 35

Jakub Čížek
Pojďme programovat elektronikuProgramování pro děti
Platby kartou se můžou rozšířit úplně všude. Jako terminál poslouží mobil
Lukáš Václavík
BankaPlacení mobilemNFC
Superinteligenci nedokážeme ovládat a nejspíše se nedozvíme, že už tam někde je

Superinteligenci nedokážeme ovládat a nejspíše se nedozvíme, že už tam někde je

** Firmy i organizace včetně EU připravují etické kodexy pro A.I. ** Vědci z Madridu zkoumali, jestli je budeme moci aplikovat na A.I. 2.0 ** A je tu háček, superinteligence pro nás totiž bude neuchopitelná

Jakub Čížek | 84

Jakub Čížek
Umělá inteligence
Nejlepší příslušenství k počítači. Tipy na osvědčené klávesnice, tiskárny, routery…

Nejlepší příslušenství k počítači. Tipy na osvědčené klávesnice, tiskárny, routery…

** Tipy na užitečné příslušenství k počítačům ** Poradíme, s jakými produkty neuděláte chybu ** Od drobností do USB až po routery a tiskárny

David Polesný, Stanislav Janů | 20

David PolesnýStanislav Janů
Příslušenství
Konec modrých obrazovek smrti? Microsoft vydává mimořádnou aktualizaci pro Windows 10
Karel Kilián
Windows UpdateAktualizaceWindows 10
Dalším gigabitovým hráčem bude ČEZ. Internet již poskytuje prvním zákazníkům
Lukáš Václavík
Poskytovatelé internetuPřipojení k internetu