Favicon Svethardware.cz  Svět hardware   Fórum Favicon Svetaudia.cz  Svět audia Favicon TVFreak.cz  TV Freak   Fórum Favicon Digimanie.cz  Digimanie   Fórum   Galerie Společnost oXy Online s.r.o.
Strana 1 z 2 12 PosledníPoslední
Zobrazené výsledky: 1 až 15 z 25

Téma: Priklady (samples) programovani pro PDA v C++

  1. #1
    Obyvatel SMob
    Registrace
    May 2006
    Příspěvků
    369

    Zdravim vsechny,
    dneska jsem se presvedcil na PDA/WM5 jak obrovsky rozdil je v rychlosti aplikace psane v C++ a aplikace psane v NetCF (konkretne C#) a rad bych do toho taky zkusil strcit frnak Nemuzu ale najit na netu zadne priklady pro C++ napr. nejake uplne jednoduche pro zacatek (formular + tlacitko "close") Muze nekdo prosim hodit nejakej odkaz?
    Odpovídat lze po přihlášení

  2. #2
    Starousedlík SMob
    Registrace
    Mar 2004
    Příspěvků
    1,452

    U WM5 SDK je samplu dost..
    Odpovídat lze po přihlášení



  3. #3
    Obyvatel SMob
    Registrace
    May 2006
    Příspěvků
    369

    :? ja jsem nasel jenom samply pro VB a CSharp muzes pls nahodit cestu k C++ samplum?

    EDIT: aaa uz to mam dikec
    Odpovídat lze po přihlášení

  4. #4

    SPM SPM je offline
    Pravidelný diskutér
    Registrace
    Jul 2006
    Příspěvků
    182

    Trochu OT - projevila se ti ta rychlost jenom ve spouštění aplikace nebo v jejim celkovym běhu?
    Odpovídat lze po přihlášení

  5. #5
    Obyvatel SMob
    Registrace
    May 2006
    Příspěvků
    369

    oboji ale tohle je hardcore programovani na to ja nemam cas takze to vidim na OpenNetCF akorat jestli se dostanu k "vyrobe" moji dlouho planovane klavesky tak to proste budu muset prekousnout :/
    Odpovídat lze po přihlášení

  6. #6
    Občasný diskutér
    Registrace
    Jan 2007
    Příspěvků
    49

    OpenNET.CF je ale jen "nadstavba" .NET CF, takže si moc nepomůžeš. A SIP v .NET CF nenapíšeš. Tedy pokud to nebude samý PInvoke. :-)
    Odpovídat lze po přihlášení

  7. #7
    Obyvatel SMob
    Registrace
    May 2006
    Příspěvků
    369

    TO PHACKER:
    jj to uz vim jinak rekl bych ze asi budes takovej ten hard-code programator (neboli programator co se muze plnym pravem titulovat "programator") tak bys mozna mohl vedet jak vyresit jednu vec co mi jeste chybi k vytvareni SIPu modifikaci samplu DvorakSip ( http://www.taptapsms.wz.cz/files/Dvoraksip_WM5.rar ) a sice to, jak zvetsit canvas SIPu. Zkousel jsem menit nastavenou velikost v hlavnim kodu i v hlavickach ale bez vysledku (porad je to 80x240 a ja potrebuju 100x240) Zkousel jsem vsechno mozny a nechapu kde takova blbost muze byt schovana Fakt to nechapu a kdybych ten kod nevidel tak by me ani ve snu nenapadlo ze takova blbost bude nekde schovana :/ Muzes mi s tim pls helpnout?
    Odpovídat lze po přihlášení



  8. #8
    Starousedlík SMob
    Registrace
    Jan 2004
    Příspěvků
    2,017

    Tak jsem se do kodu v rychosti dival - mam pocit, ze GetSipOnfo velikost vzdy nezmeni (ze jde ze strany programu je o doporuceni).

    Zkousel jste tento kod v metode Showing?

    Kód:
    RECT defRect;
    RECT rcClients;
    IMINFO imInfo;
    
        //Souradnice si zvolte podle sebe
        GetWindowRect(hwnd, &rcClients);
        defRect.left=rcClients.left;
        defRect.top=rcClients.bottom -  BITMAP_HEIGHT
        defRect.right=rcClients.left+ BITMAP_WIDTH;
        defRect.bottom=rcClients.bottom;
        imInfo.rcSipRect=defRect;
        g_pIMCallback->SetImInfo(&iminfo);
    BTW: Neverte tomu, ze dobry programator se pozna podle toho, ze programuje v C++ - potkal jsem prilis mnoho "prasaku", kteri v C++ psali naprosto zversky kod s tunou chyb a tvrdili, kolik let maji praxe. Programator, ktery v C++ programuje dele, a nezna treba pri pouzivani kritickych sekci idiom RAII je mnohem horsi nestesti, nez programator v C# nebo Jave, kteremu na stribrnem podnose prinese samotny jazyk podporu pro RAII.
    Odpovídat lze po přihlášení

  9. #9
    Obyvatel SMob
    Registrace
    May 2006
    Příspěvků
    369

    Po kosmeticke uprave kodu v metode Showing na
    Kód:
    	RECT defRect;
    	RECT rcClients;
    	IMINFO imInfo;
    
    	 //Souradnice si zvolte podle sebe
    	GetWindowRect(g_hwndMain, &rcClients);
    	defRect.left=rcClients.left;
    	defRect.top=rcClients.bottom - BITMAP_HEIGHT;
    	defRect.right=rcClients.left + BITMAP_WIDTH;
    	defRect.bottom=rcClients.bottom;
    	imInfo.rcSipRect=defRect;
    	g_pIMCallback->SetImInfo(&imInfo);
    
        return NOERROR;
    se mi zobrazuje tohle:


    Zkousel jsem si s tim pohrat, ale bez vysledku (SIP byl vzdycky vsude mozne jenom ne dole a kdyz byl dole tak mel na vysku zase 80pix a ne 100pix jak jsem nove nastavil). Nevite co s tim?
    Odpovídat lze po přihlášení

  10. #10
    Starousedlík SMob
    Registrace
    Jan 2004
    Příspěvků
    2,017

    Podival jsem do sveho projektu (neverejneho) a tady mate upravu, ktera u me urcite funguje (kod mam ale jeste podstatne slozitejsi, takze doufam, ze tohle jsou vsechny potrebne upravy a spravne pojmenovane promenne).

    Muzete predat i handly na Bitmapy. A byt vami, podivam Vam se, jestli vam z toho puvodniho prikladu nevadi makro SCALEY...


    Kód:
    RECT defRect;
    RECT rcClients;
    IMINFO imInfo;
    
    
    RECT defRect;
    RECT rcClients;
    IMINFO imInfo;
    
    //Souradnice si zvolte podle sebe
    GetWindowRect(g_hwndMain, &rcClients);
    defRect.left=rcClients.left;
    defRect.top=rcClients.bottom - BITMAP_HEIGHT;
    defRect.right=rcClients.left + BITMAP_WIDTH;
    defRect.bottom=rcClients.bottom;
    imInfo.rcSipRect=defRect;
    imInfo.cbSize=sizeof(IMINFO); 
    imInfo.fdwFlags = SIPF_DOCKED | SIPF_ON; 
    
    g_pIMCallback->SetImInfo(&imInfo);
    
    MoveWindow(g_hwndMain, 0, 0, defRect.right - defRect.left, defRect.bottom -defRect.top, false); 
    
    return NOERROR;
    Odpovídat lze po přihlášení

  11. #11
    Obyvatel SMob
    Registrace
    May 2006
    Příspěvků
    369

    bohuzel porad to zlobi... tedka se uz zobrazi jen "pruhledne" okno a pak se kousne cela SIP funkce ve WM5 mohl byste prosim az budete mit chvilku zkusit implementovat ten vas kod do tohodle zjednoduseneho samplu?:
    http://www.taptapsms.wz.cz/files/Dvoraksip_test.rar
    Hned uvidite co to dela (myslim to "pruhledne" okno) a urcite budete vedet jak z toho ven Ja se s tim patlam skoro cely den zkousim vsechno mozny a porad nic... nejbliz jsem byl zatim s timhle vasim kodem:
    Kód:
     RECT defRect;
    RECT rcClients;
    IMINFO imInfo;
    
    //Souradnice si zvolte podle sebe
    GetWindowRect(g_hwndMain, &rcClients);
    defRect.left=rcClients.left;
    defRect.top=rcClients.bottom - BITMAP_HEIGHT;
    defRect.right=rcClients.left + BITMAP_WIDTH;
    defRect.bottom=rcClients.bottom;
    imInfo.rcSipRect=defRect;
    g_pIMCallback->SetImInfo(&imInfo);
    
    return NOERROR;
    Odpovídat lze po přihlášení

  12. #12
    Starousedlík SMob
    Registrace
    Jan 2004
    Příspěvků
    2,017

    Co se stane, kdyz v naposledy zaslanem kodu zakomentujete radek MoveWindow?
    Odpovídat lze po přihlášení



  13. #13
    Starousedlík SMob
    Registrace
    Jan 2004
    Příspěvků
    2,017

    A naplnte opravdu kompletne celou strukturu - vcetne handlu na Bitmapy atd (to same co delate v GetSipInfo).
    Jestlize budete mit stale problem se sekanim (asi nekonencou rekurzi) aplikace, dejte pouze tento flag imInfo.fdwFlags = SIPF_DOCKED.
    Odpovídat lze po přihlášení

  14. #14
    Starousedlík SMob
    Registrace
    Jan 2004
    Příspěvků
    2,017

    A jeste jeden pokus:
    Odstrante vsechno, co jsme spolecne dali do metody Showing.

    A reknete mi, co se stane, kdyz ten vas priklad (resp. metodu GetSipInfo) rozsirite o volani
    Kód:
     SendMessage (m_hwndMain, MYMSG_METHCALL, MSGCODE_GETINFO,  (LPARAM) pimi);
    A pridejte si do h souboru tyto deklarace
    Kód:
    #define MYMSG_METHCALL (WM_USER+100)           
    #define MSGCODE_GETINFO       1
    Odpovídat lze po přihlášení

  15. #15
    Obyvatel SMob
    Registrace
    May 2006
    Příspěvků
    369

    mno tak po vyzkouseni techto pokusu se zmenilo akorat to, ze SIP funkce se uplne nekousne a lze otevrit nabidku dalsich klavesnic ktere se ale neprepnou a uz se nezobrazuje "pruhledne" okno a misto nej je tam zakously otisk predchozi klavesnice... to jsem teda necekal ze to bude takovy problem vyporadat se s velikosti resp. vyskou canvasu SIPu :dead:
    Odpovídat lze po přihlášení

Strana 1 z 2 12 PosledníPoslední

Podobná témata

  1. Programování v C#
    Od abdulrahman v sekci Programování
    Reakcí: 1
    Poslední příspěvek: 02-07-2006, 19:02
  2. Programovani pro WM5
    Od m:rek v sekci Programování
    Reakcí: 4
    Poslední příspěvek: 05-04-2006, 12:24
  3. Programování her
    Od Thomas. v sekci Programování
    Reakcí: 7
    Poslední příspěvek: 24-02-2006, 15:06
  4. Programování PDA
    Od Petr Filipi v sekci Programování
    Reakcí: 1
    Poslední příspěvek: 06-05-2005, 13:35
  5. Programovani
    Od v sekci Programy pro Pocket PC
    Reakcí: 1
    Poslední příspěvek: 04-07-2002, 08:53