• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            PPC Today界面的開發心得

               這兩天為解決PPC Today界面的顯示問題著實費了不少腦筋。主要有三個問題:
               1. 點擊條目后高亮顯示,點擊其他條目后取消高亮顯示問題。
               2. 按上下鍵選擇條目后,條目不高亮顯示的問題。
               3. 由于Today界面中的條目字體大小是按照系統設置的,是可變的,因此就遇到一個獲取系統字體大小的問題。

               前兩個問題的高亮顯示,是依靠標志位來繪制的,獲取到條目被選中后,就置標志位為TRUE,否則置為FALSE,然后會進行重繪。重繪時,依靠標志位來判斷是否需要高亮繪制條目。獲取條目的顏色使用的是TODAYM_GETCOLOR消息,通過發送這個消息,可以獲取條目的普通和高亮的顏色。

               關于按上下鍵選擇。MSDN Online上說,會觸發WM_TODAYCUSTOM_USERNAVIGATION事件。但是,我在做時,并沒有觸發該事件。后來發現,該事件的觸發條件與TODAYLISTITEM中的dwSelectability設置有關,具體可參照http://www.codeguru.com/cpp/w-p/ce/pocketpc/article.php/c9269__1/。具體做法是在WM_TODAYCUSTOM_QUERYREFRESHCACHE事件中截獲TODAYLISTITEM結構體,并將其中的dwSelectability設置為2。TODAYLISTITEM的參數意義見下表:
            Value Name and Type Description
            DWORD: Type Custom Items must have Type = 4
            DWORD: Enabled 0 or 1; 1 causes Today panel to show your component; nevertheless, the user can control it via the Today applet in the Control Panel
            DWORD: Options if equals 1, the "Options" button in the Today applet will be enabled
            SZ: DLL Pull path to your component
            DWORD : Selectability New feature in Win Mobile 2003 SE; allows receiving additional notifications
            Values are used as follows:
            • 0 or does not exist—component cannot be selected at all
            • 1—selections are manages automatically. In other words, your component will receive messages like WM_LBUTTONXXX
            • 2—the Today screen will send notification messages to your component when the user sets/releases focus or presses navigation keys

               對于上下鍵選擇,需要注意的是,處理完WM_TODAYCUSTOM_USERNAVIGATION事件后,需要返回FALSE,以使系統進行其他操作,否則,再按上下鍵就不會上下移動。

               關于字體大小的設置,處理源代碼如下:
             1LOGFONT lf;
             2memset(&lf,0,sizeof(LOGFONT));
             3int iFontSizePixel;
             4SHGetUIMetrics(SHUIM_FONTSIZE_PIXEL,&iFontSizePixel, sizeof(iFontSizePixel), NULL);
             5lf.lfHeight = -iFontSizePixel;
             6HFONT hNewFont = CreateFontIndirect(&lf);
             7HGDIOBJ hOldFont = SelectObject(hdc, hNewFont);
             8 
             9DrawText(hdc , theApp.m_strBarText , theApp.m_strBarText.GetLength() , 
            10            &rect , DT_VCENTER | DT_LEFT | DT_INTERNAL);

               Selectability參數被設置為2后,需要處理WM_TODAYCUSTOM_ACTION消息,來啟動程序。

            posted on 2007-07-13 17:43 迷宮の未來 閱讀(1030) 評論(9)  編輯 收藏 引用

            評論

            # re: PPC Today界面的開發心得 2007-10-22 17:09 GG

            樓主寫的不錯。
            不過,我覺得,干嘛一定要把dwSelectability設為2,自己來處理選中焦點事件呢?把他設置為1,交給系統去處理得了。我目前就是這么做的,效果也差不多。就是選中的時候,字的顏色,不太好處理。也就是,在選中的時候,文字的顏色,有時候不變,有時候要取反色。不知道樓主對文字的顏色是怎么處理的?  回復  更多評論   

            # re: PPC Today界面的開發心得 2007-10-23 11:08 周輝

            @GG
            把dwSelectability設為2就是為了解決按上下鍵選擇條目時的未反色問題。關于反色及字體顏色問題,MOBILE5.0和MOBILE6.0系統的做法是不同的,在MOBILE6中設置不同的主題對應選中的反色后字體顏色是不同的,MOBILE5好像就沒有這中設置。  回復  更多評論   

            # re: PPC Today界面的開發心得 2007-12-20 10:20 cohere

            我最近也在研究today界面的,希望和LZ多多交流,
            我的MSN:wangguolai@tom.com  回復  更多評論   

            # re: PPC Today界面的開發心得 2008-01-20 22:38 西煞魄工人

            謝謝LZ  回復  更多評論   

            # re: PPC Today界面的開發心得 2008-03-12 11:21 cohere

            字體的大小怎么改變啊?

            wangguolai@tom.com   回復  更多評論   

            # re: PPC Today界面的開發心得 2008-03-12 11:29 cohere

            字體的大小怎么變大呢?

            wangguolai@tom.com   回復  更多評論   

            # re: PPC Today界面的開發心得 2008-03-20 15:47 追夢時代

            @cohere
            字體大小是在系統設置中設置主題字體大小的,程序中沒法設置  回復  更多評論   

            # re: PPC Today界面的開發心得[未登錄] 2008-08-07 14:48 stone

            如何提高today界面的 刷新速度啊?  回復  更多評論   

            # re: PPC Today界面的開發心得 2010-09-20 18:36 adler

            我設置的是1。

            case WM_LBUTTONDOWN:

            ::PostMessage(::GetParent(m_hWnd), TODAYM_TOOKSELECTION, (WPARAM)m_hWnd, 0);

            可就是收不到WM_TODAYCUSTOM_USERNAVIGATION消息,

            為什么呢?
            MSN:adler0518@live.cn  回復  更多評論   

            <2008年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            導航

            統計

            常用鏈接

            留言簿(10)

            隨筆檔案

            文章檔案

            最新隨筆

            搜索

            積分與排名

            最新隨筆

            最新評論

            閱讀排行榜

            評論排行榜

            久久本道久久综合伊人| 久久久无码人妻精品无码| 精品无码久久久久久国产| 久久性精品| 色天使久久综合网天天| 色综合久久夜色精品国产| 久久亚洲高清观看| 久久久久国产精品麻豆AR影院| 亚洲人成伊人成综合网久久久| 国产精品9999久久久久| 久久精品国产只有精品66 | 无码国内精品久久人妻| 久久99精品久久久久久久久久| 成人国内精品久久久久影院VR| 亚洲熟妇无码另类久久久| 久久久综合九色合综国产| 久久亚洲精品无码aⅴ大香| 97久久综合精品久久久综合| 影音先锋女人AV鲁色资源网久久| 久久被窝电影亚洲爽爽爽| 久久99精品久久久久子伦| 久久这里的只有是精品23| 国内精品伊人久久久久网站| 色婷婷综合久久久中文字幕| 国产精品99久久久精品无码| 国产毛片久久久久久国产毛片| 精品久久久无码人妻中文字幕 | 少妇高潮惨叫久久久久久 | 久久精品成人欧美大片| 99久久er这里只有精品18| 一本色道久久综合狠狠躁篇 | 国产AⅤ精品一区二区三区久久| 人妻久久久一区二区三区| 久久人人爽人人爽人人av东京热| 久久天天躁狠狠躁夜夜2020老熟妇| av国内精品久久久久影院 | 99久久99久久精品国产| 久久91这里精品国产2020| 久久婷婷久久一区二区三区| 久久亚洲精品中文字幕三区| 国产成人精品久久一区二区三区|