Tap-n-hold v Edit casti Combo Boxu

květen 23, 2007

Situace: Aplikace, ktera neni zalozena na dialogu (v MFC), protoze nechci, aby OK/Close button ji zavrel, ale jen minimalizoval. Takze hlavni okno je CWnd. Na nem dva prvky – CComboBox a CButton. Tapnuti na button spousti hledani vyrazu zadaneho v combo boxu. Combo box, protoze v jeho drop down menu je historie hledanych slov. Logicke. Intuitivni.

Problem cislo 1: Nejde tap-n-hold na edit casti combo boxu, coz je pekne naprd, protoze bezne to uzivatel bude chtit pouzit.
Reseni: Combo box nahrazen CEditem. Ztracime historii, kterou tam budeme muset dodelat jinak.

Problem cislo 2: Kdyz user tapne na SW klavesnici na Enter, tak aby se spustilo hledani. Nic se vsak nedeje.
Pokud bysme meli dialog, tak udelame button se stylem BS_DEFPUSHBUTTON a je vystarano. Rucni pridani stylu do buttonu nejde, ani kdyz se prida poslani zpravy DM_SETDEFID, ktera oznami default control. Neni se cemu divit, nejsme na dialogu, ale jen na CWnd.
Reseni: Odvozeni noveho editu, pridani reakce na zpravu WM_CHAR. Ta posle user-defined zpravu rodici. Ten ji odchytne a vyvola hledani. Dementni, ale funguje.

A to vsechno jen kvuli tomu, aby fungoval tap-n-hold na editu combo boxu! Ja vam radim neprogramujte, jinak skoncite u doc. Chocholouska.

Jeste me napadlo zmenit zakladni CWnd na CDialog, ale obavam se, ze by to byla cesta do pekel.

Entry Filed under: PocketPC, Vývojka, Ze života. .

Leave a Comment

Required

Required, hidden

Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Trackback this post  |  Subscribe to the comments via RSS Feed


Kalendář

květen 2007
po út st čt so ne
« dub   čer »
 123456
78910111213
14151617181920
21222324252627
28293031  

Kategorie

Poslední příspěvky

Archiv

Nezařazeno

PocketPC

Software

Ze života

Statistika Blogu