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

            牽著老婆滿(mǎn)街逛

            嚴(yán)以律己,寬以待人. 三思而后行.
            GMail/GTalk: yanglinbo#google.com;
            MSN/Email: tx7do#yahoo.com.cn;
            QQ: 3 0 3 3 9 6 9 2 0 .

            將窗口移動(dòng)到前端, BringWindowToTop() 的問(wèn)題

            轉(zhuǎn)載自:http://blog.csdn.net/felixz/archive/2007/03/28/1544486.aspx

            有一段代碼,是在我們的應(yīng)用程序中將其他應(yīng)用程序的窗口移動(dòng)到最前端,當(dāng)我們的程序在 Vista 下運(yùn)行的時(shí)候遇到了些問(wèn)題,有時(shí)候被移動(dòng)窗口只是閃動(dòng)任務(wù)欄上的按鈕,并未能將窗口移動(dòng)到前方來(lái). 研究了一下,發(fā)現(xiàn)是否能夠移動(dòng)成功和當(dāng)前自身進(jìn)程所附加的輸入上下文有關(guān), 參見(jiàn)

            WIN32 API AttachThreadInput()

             
            寫(xiě)了個(gè) MyBringWindowToTop() 如下, 這是個(gè) draft 把我用到過(guò)的能把窗口拿到最前方的 API 都羅列在里面了, 也沒(méi)有正確的返回值, 供參考.

            BOOL MyBringWindowToTop(HWND hWnd)
            {

                HWND hFrgWnd 
            = ::GetForegroundWindow();
                AttachThreadInput( GetWindowThreadProcessId(hFrgWnd, NULL), GetCurrentThreadId(), TRUE );
                ::SetForegroundWindow(hWnd);
                ::BringWindowToTop(hWnd);

                
            if (!::BringWindowToTop(hWnd))
                
            {
                    printf(
            "BringWindowToTop Error %d\n", GetLastError());
                }

                
            else
                
            {
                    printf(
            "BringWindowToTop OK\n");
                }

                
            if (!::SetForegroundWindow(hWnd))
                
            {
                    printf(
            "SetForegroundWindow Error %d\n", GetLastError());
                }

                
            else
                
            {
                    printf(
            "SetForegroundWindow OK\n");
                }


                SwitchToThisWindow(hWnd, TRUE);

                AttachThreadInput(GetWindowThreadProcessId(hFrgWnd, NULL), 
                    GetCurrentThreadId(), FALSE);

                
            return TRUE;
            }

            posted on 2009-08-28 16:42 楊粼波 閱讀(1566) 評(píng)論(0)  編輯 收藏 引用


            只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            国产香蕉久久精品综合网| 国内精品人妻无码久久久影院| 人妻中文久久久久| 久久夜色精品国产亚洲| 日本道色综合久久影院| 久久精品国产亚洲αv忘忧草 | 久久亚洲日韩精品一区二区三区| 亚洲综合熟女久久久30p| 99热热久久这里只有精品68| 久久婷婷五月综合国产尤物app| 久久乐国产精品亚洲综合 | 日本免费一区二区久久人人澡| 色99久久久久高潮综合影院| 久久精品嫩草影院| AV无码久久久久不卡网站下载| 午夜精品久久影院蜜桃| 久久精品国产精品亚洲下载| 狠狠色婷婷久久综合频道日韩| 国产精品久久99| 久久精品国产亚洲AV香蕉| 色老头网站久久网| 女同久久| 亚洲精品无码久久久久AV麻豆| 欧美777精品久久久久网| 久久66热人妻偷产精品9| 亚洲中文字幕久久精品无码APP| 亚洲人成网站999久久久综合| 久久这里只有精品视频99| 国产精品亚洲美女久久久| 99精品伊人久久久大香线蕉| 午夜不卡888久久| 伊人丁香狠狠色综合久久| 久久精品国产亚洲麻豆| 欧美精品一区二区精品久久| 色综合久久中文色婷婷| 国产精品gz久久久| 久久精品一区二区三区中文字幕 | 久久亚洲精品国产亚洲老地址| 久久受www免费人成_看片中文| 精品国产乱码久久久久久人妻| 欧美午夜精品久久久久免费视 |