Klávesové zkratky na tomto webu - základní
Přeskočit hlavičku portálu


Programování PocketPC naruby (5/12)

aktualizováno 
Patříte mezi uživatele PocketPC, kteří by si rádi také něco naprogramovali, řadíte se však k tzv. falešným začátečníkům? Pak právě vám je určen náš seriál věnovaný programování pro kapesní počítače s Windows Mobile. Dnešní díl věnujeme návrhu vlastní aplikace.
V minulém díle jsme si představili popis ukončení aplikace. V dnešní části našeho seriálu si popíšeme návrh vlastního programu.

Jednoduchá aplikace

Nyní můžeme přistoupit k návrhu vlastní aplikace; zvolíme si velmi jednoduchou aplikaci, na níž si ukážeme základní kroky při návrhu a vytvoření aplikace:

  • Kde a jak budou uložena data aplikace
  • Kde bude uloženo nastavení aplikace
  • Obsah hlavního okna aplikace, nabídka hlavního okna
  • Uživatelské rozhraní - dialogy, výzvy, ikony, funkční klávesy
  • Spolupráce se stolním PC

Aplikace se bude jmenovat LIST a bude obsahovat jednoduchý seznam (například úkolů nebo věcí, které je třeba nakoupit). U každé položky seznamu bude ikona, kterou bude moci uživatel změnit; změnou ikony bude vyjádřen stav položky (hotovo - nakoupeno a podobně). Budou použity jen tři ikony - nevyplněná, zeleně odfajfkovaná a červeně přeškrtnutá.

Aplikace LIST bude spolupracovat s obdobnou aplikací, která poběží na stolním počítači; spolupráce bude pro jednoduchost zajištěna pouze prostřednictvím synchronizace souboru obsahujícího položky seznamu.

Při návrhu budeme postupovat tak, že po základní rozvaze vytvoříme program pro stolní počítač, který odladíme a poté upravíme pro použití na kapesních počítačích. Tento postup může být leckdy pro začátečníky (kteří se řadu věcí učí metodou pokus-omyl) jednodušší, protože cyklus překladu a spuštění aplikace pro stolní počítač je výrazně rychlejší.

Uložení dat

Data aplikace budou uložena v jednoduchém textovém souboru se jménem List.TXT. Na každém řádku souboru bude jedna položka. Řádky budou obsahovat číslo ikony (0-2), oddělovač a text příslušné položky.

Zde však narazíme na první problém: zatímco stolní Windows používají 8-bitové kódování ASCII, tak Windows CE používají 16-bitový UNICODE. Pokud na obou počítačích vytvoříme textový soubor s písmenky "ABC", tak na stolním bude mít délku 3 byte a na kapesním počítači bude mít délku 6 byte.

Aby Microsoft zjednodušil práci s textem na různých platformách, zavedl celkem tři typy pro uložení textových dat: char, WCHAR a TCHAR. Rozdíly mezi typy char a WCHAR udává následující tabulka:

  char WCHAR
Velikost (sizeof(...)) 1 byte 2 byte
funkce pro kopírování řetězců strcpy(char*, char*) wcscpy(WCHAR*, WCHAR*)
otevření souboru fopen(char*, char*)
soubor obsahuje znaky ASCII
_wfopen(WCHAR*, WCHAR*)
soubor obsahuje znaky UNICODE

Pro převod mezi char a WCHAR slouží funkce mbstowcs a wcstombs. Převod je závislý na správném jazykovém nastavení příslušného operačního systému, na kterém tyto funkce spouštíme.

Pro zjednodušení je zde navíc typ TCHAR, který je na platformě stolních Windows považován za jednobytový char a ve Windows CE za dvoubytový WCHAR. Proto všechny funkce, které mají jako parametr typ TCHAR budou přeloženy se správným typem znaků pro danou platformu.

Pro naši aplikaci z toho plynou následující požadavky:

  • Kdekoliv budeme pracovat s textem, použijeme typ TCHAR. To zajistí optimální uložení textu na platformě, pro kterou překlad provádíme.
  • Pro uložení do souboru použijeme ve všech operačních systémech (Windows i Windows CE) funkci fopen, která pracuje s 8-bitovými znaky v kódování ASCII. Pokud budeme program překládat pro platformu, kde jsou znaky 16-bitové (na Windows CE), převedeme char na WCHAR pomocí funkce mbstowcs například takto:

    TCHAR* text = ...;
    char line[MAXTEXT];
    int icon = ...;

#ifdef _UNICODE
     wcstombs(line, text, MAXTEXT); // Převádíme
#else
     strncpy(line, text, MAXTEXT); // Pouze kopírujeme
#endif

     fprintf(f, "%d|%s\n", icon, line);

Uložení dat zapouzdříme do jednoho objektu s názvem například Storage. Tento objekt, který zajistí uložení dat, budeme využívat na obou platformách.

V další části se podíváme na nastavení a hlavní okno aplikace.





Nejčtenější

Nubia Z11 miniS
Nubia zlevnila i o více než tisíc korun. A rovnou všechny modely

Nubia zlevnila prakticky celý svůj sortiment na českém trhu. Hned několik modelů se tak dočkalo cenovky nižší i o více než tisíc korun.  celý článek

Ilustrační snímek
Úřad chce regulovat mobilní trh. Může to zlevnit volání a rychlá data

Podle Českého telekomunikačního úřadu na trhu nefunguje hospodářská soutěž. Regulaci však bude předcházet veřejná konzultace a následně analýza trhu. Výsledky...  celý článek

Soyes 6S
Nejmenší „iPhony“ na světě můžete mít za 1 300 korun

Kopie iPhonů nejsou žádnou novinkou, v čínských e-shopech jich najdeme desítky více či méně povedených. Mezi ty minimálně zajímavé patří mini smartphony Soyes....  celý článek

Ilustrační snímek
ČTÚ smetl ze stolu žádosti virtuálů. Roaming je pro ně noční můrou

Již v průběhu května obdržel Český telekomunikační úřad od tří virtuálních operátorů žádosti o povolení účtovat příplatek k roamingu. Virtuálové bez vlastní...  celý článek

rozbitý telefon
Revoluční patent: mobil si sám opraví prasklý displej

Zní to jako pořádné sci-fi, ale praskliny na displeji možná mobily v budoucnu opraví samy. Poslední patent Motoroly naznačuje, že se na takové technologii už...  celý článek

Další z rubriky

Nové parkovací automaty v Praze
Jak zaplatit za nové parkovací zóny v Praze? Mobil je téměř nutností

Nové zóny placeného stání startují dnes v pátém a šestém pražském obvodu. Zóny jsou rozděleny na tři typy a novinkou je placení za parkování mobilem. Aplikace...  celý článek

Netradiční fotoaplikace Gudak vás donutí nad fotkami zase přemýšlet
Za 23 korun vám aplikace fotku z iPhonu ukáže až za tři dny

Vnímání fotografie se za posledních pár let výrazně změnilo. Díky záznamovým médiím již totiž nemusíme přemýšlet nad každým snímkem jako kdysi. Doby, kdy se...  celý článek

Ilustrační snímek
S těmito aplikacemi se o dovolené neztratíte. Najdou let i levný hotel

Místo slovníku, mapy a průvodce už řada lidí vyráží na dovolenou na neznámé místo jen se svým telefonem. V mnoha situacích je totiž neocenitelným pomocníkem....  celý článek

Najdete na iDNES.cz



mobilní verze
© 1999–2017 MAFRA, a. s., a dodavatelé Profimedia, Reuters, ČTK, AP. Jakékoliv užití obsahu včetně převzetí, šíření či dalšího zpřístupňování článků a fotografií je bez souhlasu MAFRA, a. s., zakázáno. Provozovatelem serveru iDNES.cz je MAFRA, a. s., se sídlem
Karla Engliše 519/11, 150 00 Praha 5, IČ: 45313351, zapsaná v obchodním rejstříku vedeném Městským soudem v Praze, oddíl B, vložka 1328. Vydavatelství MAFRA, a. s., je členem koncernu AGROFERT.