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

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 RAD Studio a Windows Store

RAD Studio a Windows Store

RAD Studio je první vývojové prostředí se zabudovanou podporou balení aplikací typu Win32 a Win64 pro jejich umístění a šíření prostřednictvím Windows 10 Store.

Reklama
Reklama
Obrázek ke článku Testujte na 2 400+ Android a iOS zařízení

Testujte na 2 400+ Android a iOS zařízení

V dnešní době, kdy většina softwaru pro mobilní aplikace je tvořena a distribuována průběžně, mnohdy do celého světa je třeba zajistit také průběžnou automatizaci testování mobilního softwaru. V případě mobilních aplikací pro Android a iOS začíná být problém, jak testovat na obrovském množství kombinací HW variant, rozměrů, edic operačních systémů různých výrobců v různých částech světa na reálných zařízení. Simulátory a emulátory nejsou většinou to pravé. Pokud již testuji, jak si udělat vlastní beta distribuci opravdovým reálným testerům napříč platformami?

Obrázek ke článku Funkcie main vo Windows API

Funkcie main vo Windows API

V tretej časti seriálu o Windows API budeme hovoriť o funkčných prototypoch main. Funkčný prototyp je tvorený názvom funkcie a typom signatúry, pričom sa vynecháva telo funkcie. 

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ý