• <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>

            技術(shù)備忘錄

            c++及圖形學(xué)

             

            C++中嵌入ie瀏覽器總結(jié)(4) - 對話框拖動

                 前面忘了寫這個問題,就是對話框的拖動問題。就像我前面的圖片展示的對話框,一般的windows對話框是可以拖著標(biāo)題欄移動的,但是我們這里沒有任何原來的標(biāo)題欄了,只有html頁面,怎么拖呢? 好像有點麻煩。
                   冥思苦想之后,想到一種辦法,通過前面的接口給c++發(fā)指令,讓c++移動窗口,頁面上計算好拖動的距離。html里面頁面的拖動還是比較簡單的,c++里面移動也就是調(diào)用 MoveWindow。由于前面的通訊方法還是比較靈活,沒用多少時間,就把這個功能實現(xiàn)了。但是一運行看,不太對勁,拖動過程拖尾現(xiàn)象太明顯??赡苁莄++不斷調(diào)用 MoveWindow 重繪效率比較低。這可麻煩了。這時候,突然想到普通對話框拖動的時候,是一個虛框在那里動,原來的對話框是不動的,鼠標(biāo)放開后,對話框才移過去。 能不能做到這樣呢? 但是windows實現(xiàn)這個方法的細(xì)節(jié)不得而知,怎么做呢? 
                   還是google好啊,經(jīng)過一番搜索,找到了答案: 
              
            void TooltipDlg::moveWin( const std::vector<wxString> &args )
            {
                
            if(args.size()<2return;
                
            long x,y;
                args[
            0].ToLong(&x);
                args[
            1].ToLong(&y);
                
            int ix,iy;
                ix 
            = x;
                iy 
            = y;
                ClientToScreen(
            &ix,&iy);
             

                ::SendMessage((HWND)
            this->GetHWND(),WM_NCMOUSEMOVE,HTCAPTION,MAKELPARAM(ix, iy)); 

            }
               搞定了,簡單吧,真是沒想到這么簡單。運行后發(fā)現(xiàn),真的和windows的對話框移動一模一樣了,太好了

            今天一鼓作氣把前面幾天的工作都總結(jié)了下來,還真是敲得手有點累。但是這些東西確實是不太常規(guī)的方法,找解決問題的方法很難,這里先把他們記錄下來,免得以后找不到了。以前確實有很多知識都是用了就丟一邊找不到了。 也希望給有類似疑問的朋友一個幫助。

            posted on 2008-12-20 23:08 jerrychan 閱讀(2424) 評論(2)  編輯 收藏 引用 所屬分類: C++

            評論

            # re: C++中嵌入ie瀏覽器總結(jié)(4) - 對話框拖動 2008-12-21 13:19 小笨象

            不用這么麻煩。
            在函數(shù)中:
            這樣兩句即可。
            ReleaseCapture();
            Perform(WM_SYSCOMMAND, SC_MOVE+HTCAPTION, 0);
              回復(fù)  更多評論   

            # re: C++中嵌入ie瀏覽器總結(jié)(4) - 對話框拖動 2008-12-21 13:22 jerrychan

            @小笨象
            其實最后一句就行了,坐標(biāo)設(shè)置沒有用,后來懶得刪去了:)  回復(fù)  更多評論   

            導(dǎo)航

            統(tǒng)計

            常用鏈接

            留言簿(7)

            隨筆分類

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            亚洲中文字幕无码久久2020| 香蕉久久夜色精品国产2020| 亚洲欧洲久久久精品| 国产精品成人99久久久久91gav | avtt天堂网久久精品| 久久精品这里只有精99品| 国产成人无码精品久久久久免费| 久久WWW免费人成—看片| 漂亮人妻被中出中文字幕久久 | 久久精品国产亚洲网站| 一本色道久久综合狠狠躁篇| 国产免费福利体检区久久| 久久成人精品视频| 久久亚洲私人国产精品vA| 99久久婷婷国产综合精品草原| 久久久精品人妻无码专区不卡 | 亚洲午夜久久久| 亚洲欧美日韩精品久久| 亚洲国产精品久久久久婷婷软件| 色综合久久88色综合天天| 激情久久久久久久久久| 日本精品一区二区久久久| 欧美成人免费观看久久| 亚洲午夜无码久久久久| 精品午夜久久福利大片| 99久久精品费精品国产| 亚洲国产精品成人久久蜜臀 | 亚洲中文字幕无码久久2017| 久久婷婷五月综合97色| 丁香五月综合久久激情| 伊人久久大香线蕉亚洲五月天| a高清免费毛片久久| 亚洲欧美久久久久9999 | 久久九九久精品国产| 久久国产色av免费看| 国产成人香蕉久久久久| 伊人久久大香线蕉av不变影院| 久久精品国产半推半就| 波多野结衣久久一区二区| 久久久青草久久久青草| 久久精品国产亚洲av麻豆蜜芽|