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

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 355×

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 Nový IT hráč na českém trhu

Nový IT hráč na českém trhu

V roce 2015 otevřela v Praze na Pankráci v budově City Tower své kanceláře společnost EPAM Systems (NYSE:EPAM), jejíž centrála se nachází v USA. Společnost byla založená v roce 1993 a od té doby prošla velkým vývojem a stále roste.

Reklama
Reklama
Obrázek ke článku České Radiokomunikace opět hledají nejlepší nápady pro internet věcí

České Radiokomunikace opět hledají nejlepší nápady pro internet věcí

České Radiokomunikace (CRA) pořádají druhý ročník CRA IoT Hackathonů. Zájemci z řad vývojářů a fanoušků moderních technologií mohou změřit své síly a během jediného dne sestrojit co nejzajímavější funkční prototyp zařízení, které bude komunikovat prostřednictvím sítě LoRa. CRA IoT Hackathony se letos uskuteční ve dvou fázích, na jaře a na podzim, v různých městech České republiky. Jarní běh se odstartuje 31. března v Brně a 7. dubna v Praze.

Obrázek ke článku Cloud computing je využíván stále intenzivněji

Cloud computing je využíván stále intenzivněji

Využívání cloud computingu nabývá na intenzitě. Jen v letošním roce vzroste podle analytiků trh se službami veřejného cloudu o 18 %, přičemž o téměř 37 % vzrostou služby typu IaaS. Růst o více než pětinu pak čeká služby poskytování softwaru formou služby, tedy SaaS. Aktuálním trendům v oblasti využívání cloudu se bude věnovat konference Cloud computing v praxi, která se koná 23. března. 2017 v pražském Kongresovém centru Vavruška na Karlově náměstí 5.

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý