<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 4, 文章 - 1, 評論 - 22, 引用 - 0
    數(shù)據(jù)加載中……

    獲取Java程序的窗口句柄

        我們知道C++的每個窗體都對應(yīng)著一個句柄HWND,通過這個句柄我們可以對這個窗口以及它的資源進(jìn)行各種操作,比如讓它前端顯示等。那么操作系統(tǒng)給Java編寫的窗體(Frame或者JFrame的對象或者子類對象)有沒有分配這個唯一的HWND呢?
        用spy++查看一下,F(xiàn)rame或者JFrame的對象或者子類對象確實(shí)都是存在這個窗口句柄的,那么我們怎么來得到它呢?
        下面就是通過JNI取得這個句柄的代碼。
     1HWND GetHwndOfJavaWindow(JNIEnv *env, jobject window)
     2{
     3    cout << "GetHwndOfJavaWindow" << endl;
     4
     5    HWND hwnd = NULL;
     6
     7    JAWT_DrawingSurface *ds;
     8    JAWT_DrawingSurfaceInfo *dsi;
     9    JAWT_Win32DrawingSurfaceInfo *win;
    10
    11    JAWT awt;
    12    awt.version = JAWT_VERSION_1_3;
    13    jboolean result = JAWT_GetAWT(env, &awt);
    14    if(result == JNI_TRUE)
    15    {
    16        ds = awt.GetDrawingSurface(env, window);
    17        jint lock = ds -> Lock(ds);
    18        if(lock != JAWT_LOCK_ERROR)
    19        {
    20            dsi = ds -> GetDrawingSurfaceInfo(ds);
    21            win = (JAWT_Win32DrawingSurfaceInfo *) dsi -> platformInfo;
    22            
    23            hwnd = win -> hwnd;
    24
    25            ds -> FreeDrawingSurfaceInfo(dsi);
    26            ds -> Unlock(ds);
    27            awt.FreeDrawingSurface(ds);
    28        }

    29    }

    30
    31    return hwnd;
    32}

    有了這個窗口句柄后,我們就可以讓Java窗體也具有很多本地化的功能了,比如閃爍標(biāo)題欄,禁止最大化最小化以及關(guān)閉按鈕等。

    posted on 2010-02-10 11:15 凱子 閱讀(5933) 評論(2)  編輯  收藏 所屬分類: JNI

    評論

    # re: 獲取Java程序的窗口句柄[未登錄]  回復(fù)  更多評論   

    那么如何獲得里面的控件呢?能給出一個解決方案嗎
    2010-03-30 14:13 | tony

    # re: 獲取Java程序的窗口句柄  回復(fù)  更多評論   

    標(biāo)記
    2015-03-06 16:01 | jycggyh

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲一区二区高清| 美丽的姑娘免费观看在线播放 | 国产高清不卡免费视频| 亚洲精品无码久久久久秋霞| av免费不卡国产观看| 亚洲丝袜中文字幕| 亚洲中文无码永久免费| 亚洲人成综合网站7777香蕉| 好男人www免费高清视频在线| 在线观看日本亚洲一区| 亚欧洲精品在线视频免费观看| 国产伦一区二区三区免费| 老牛精品亚洲成av人片| 亚洲中文字幕无码爆乳av中文| 国产精品福利在线观看免费不卡| 中文字幕精品亚洲无线码一区应用| 国产特黄特色的大片观看免费视频 | 亚洲精品无码专区在线播放| 免费观看一级毛片| 美女被爆羞羞网站在免费观看| 污污网站18禁在线永久免费观看| 亚洲精品在线免费观看| 99视频在线精品免费观看6| 国产成人精品日本亚洲语音| 亚洲一级特黄大片在线观看| 鲁大师在线影院免费观看| 亚洲校园春色另类激情| 免费欧洲美女牲交视频| 91视频精品全国免费观看| 亚洲美女视频一区二区三区| 岛国片在线免费观看| 一区二区三区精品高清视频免费在线播放| 亚洲日韩乱码中文无码蜜桃臀网站| 99蜜桃在线观看免费视频网站| 中文无码亚洲精品字幕| 毛茸茸bbw亚洲人| 日韩国产精品亚洲а∨天堂免| 中文字幕日韩亚洲| 精品免费人成视频app| 免费精品视频在线| 亚洲色偷偷av男人的天堂|