Různé API funkce a zajímavosti
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Různé API funkce a zajímavostiRůzné API funkce a zajímavosti

 

Různé API funkce a zajímavosti

Google       Google       23. 5. 2006       16 869×

Tento díl je věnován API funkcím a různým tipům.

Reklama
Reklama

Jak jsem již psal na konci minulého dílu, tak dnes se zaměřím na více různých drobných tipů a triků. Prvním bude API funkce MessageBox:

MessageBox(handle, Pchar('Toto je text který bude vypsán'), Pchar('Toto je nadpisek funkce'), MB_ICONINFORMATION);

Prvním parametrem je handle, druhým je text, který bude vypsán, a třetí text, který bude v nadpisku message boxu. Čtvrtý parametr je, jakého formátu message box bude. Těch formátu je více:

MB_ICONINFORMATION
Zobrazí se bublinka s „i“
MB_ICONERROR
Zobrazí se ikonka křížku
MB_ICONEXCLAMATION
Zobrazí se ikonka s vykřičníkem
MB_ICONQUESTION
Zobrazí se bublinka s otazníkem
MB_ABORTRETRYIGNORE
Message box bude obsahovat tři tlačítka: Přerušit, Opakovat a Přeskočit
MB_OK
Message box box bude obsahovat pouze jedno tlačítko: OK. Toto je defaultní.
MB_OKCANCEL
Message box bude obsahovat dvě tlačítka: OK a Storno
MB_RETRYCANCEL
Message box bude obsahovat dvě tlačítka: Opakovat a Storno
MB_YESNO
Message box bude obsahovat dvě tlačítka: Ano a Ne
MB_YESNOCANCEL
Message box bude obsahovat tři tlačítka: Ano, Ne a Storno

MessageBox vrací 0, když není dostatek paměti pro vytvoření MessageBoxu. Jinak vždy navrací jednu z těchto hodnot:

Přehled vracených hodnot
Hodnota Numerická hodnota Význam
IDOK 1 Uživatel stiskl tlačítko OK
IDCANCEL 2 Uživatel stiskl tlačítko Storno
IDABORT 3 Uživatel stiskl tlačítko Přerušit
IDRETRY 4 Uživatel stiskl tlačítko Opakovat
IDIGNORE 5 Uživatel stiskl tlačítko Přeskočit
IDYES 6 Uživatel stiskl tlačítko Ano
IDNO 7 Uživatel stiskl tlačítko Ne

Čtvrtý parametr se může kombinovat. Jestliže tedy chcete, aby MessageBox vyhodil hlášku s otázkou a bylo tam, jestli chcete vypnout program nebo ne, musíte za čtvrtý parametr zadat MB_ICONQUESTION + MB_YESNO. Vše si ukážeme na příkladu:

...
var
  odpoved:integer;
begin
   odpoved := MessageBox(handle, Pchar(' Přejete si ukončit program?'), Pchar('Otázka'), MB_ICONQUESTION+MB_YESNO);
   
   If odpoved = IDYES then begin
      Application.terminate;
   end else begin
      MessageBox(handle, Pchar('Tak jedem dál'), Pchar('Upozornění'),MB_ICONEXCLAMATION);
   end;
 
end;
...

Doufám, že je to všem jasné, a teď si ukážeme další tip. Nudí vás ty škaredé žluté Hinty, které vyskakují, když nad něčím podržíte kurzor? Mám pro vás radu, jak můžete jejich barvu změnit, a dokonce i nastavit dobu, po kterou budou zobrazeny, a jak dlouho budete muset kurzor držet nad dotyčnou komponentou. Takže teď vám ukážu, jak se tato barva dá změnit:

Application.HintColor := clGreen;

Z příkladu vyplývá, že teď budeme mít nastavenou zelené pozadí hintů. Teď slibovaná délka trvání hintu:

Application.HintHidePause := 6000;

Čas trvání, po který bude hint zobrazen, je udán v milisekundách. A do třetice po jak dlouhé době po najedení myší na daný objekt se hint objeví:

Application.HintPause := 2000;

Taktéž jako i u předchozího příkladu, čas je udán v milisekundách. Všechny tyto změny můžete dělat kdykoliv během běhu programu.

Další tip bude ke schování formuláře a i ikonky z taskbaru (to je ta dolní lišta). Zase se jedná o API funkci.

ShowWindow(handle formu nebo aplikace, parametr);

Parametrů je sice více, ale my si uvedeme jen dva parametry. SW_SHOW zobrazí okno, SW_HIDE schová okno. A první parametr, kterým je handle, určujeme, co chceme skrýt či zobrazit. Jestliže chceme skrýt jen formulář, postačí nám toto:

ShowWindow(handle, SW_HIDE);

A když budeme chtít schovat i tu ikonku z dolní lišty, budeme muset místo handle formu zadat handle aplikace:

ShowWindow(application.handle, SW_HIDE);

Toto je pro dnešek vše. Příště budeme zase pokračovat.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
Autor programoval v Visual Basicu, Delphi, nyní jen v Jave!

Nové články

Obrázek ke článku První český hackathon ve vlaku inspirovaly služby jako  Tinder, Airbnb nebo Uber

První český hackathon ve vlaku inspirovaly služby jako Tinder, Airbnb nebo Uber

Patnáct set kilometrů, cesta přes dva státy, šestnáct hodin programování a přísun
energy drinků, tak by se dal shrnout unikátní hackathon ve vlaku pořádaný Kiwi.com.
Z Prahy do Košic a zpět se svezlo celkem 13 týmů, každý s originálním nápadem. Hlavní
výhru, voucher na letenky v hodnotě 2 500 EUR, si v Praze převzal tým až z Ukrajiny.
Společně naprogramovali aplikaci Fly2event, která vytváří cestovatelské balíčky ušité
uživatelům na míru podle toho, co si „olajkovali“ na Facebooku. Projekt má i podle
organizátorů budoucnost a jeho tvůrci ho v současnosti už spouští na webové stránce
fly2event.com.

Reklama
Reklama
Obrázek ke článku Gamifikace nakupování dorazila i do České republiky

Gamifikace nakupování dorazila i do České republiky

Zákazníci zejména retailových společností jsou často znuděni klasickými věrnostními či motivačními programy. Většinou z toho důvodu, že jsou jeden jako druhý a nepřináší nic nového. Ale i v České republice se projevují zahraniční trendy, nedávno zde totiž vstoupila na trh a rychle se uchytila nová platforma kombinující to nejlepší z věrnostních a motivačních programů, která navíc využívá prvky gamifikace – Rondo.cz. Na hlavní milníky vývoje nálad a motivace zákazníků a nejnovější trendy se zaměřil Jan Hřebabecký, spoluzakladatel Rondo.cz

Obrázek ke článku NopCommerce – datová vrstva a přístup k datům – 2. díl

NopCommerce – datová vrstva a přístup k datům – 2. díl

V minulém článku jsme si představili platformu NopCommerce z globálního pohledu. V dnešním díle se již zaměříme na konkrétní část systému, a to datovou vrstvu. Představíme si základní stavební kameny systému v podobě doménových objektů. Ukážeme si, jakým způsobem rozšířit doménové objekty a jakým způsobem přistupuje NopCommerce k nastavení systému a modulů.

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý