google earth 二次開發問題

2021-06-07 01:36:52 字數 1074 閱讀 3087

以vs2005為例(其他windows開發平台都可以),首先新建乙個winform窗體,將ge的com元件引用進來,並在winform上新增乙個panel控制項(命名為pnlearth),然後引入我們所需要的幾個window api函式和常量。(這些api的具體作用和使用方法請自己查資料,這裡不再囉嗦)

接下來,我們開始最關鍵的部分–ge地圖控制項截獲:

以vs2005為例(其他windows開發平台都可以),首先新建乙個winform窗體,將ge的com元件引用進來,並在winform上新增乙個panel控制項(命名為pnlearth),然後引入我們所需要的幾個window api函式和常量。(這些api的具體作用和使用方法請自己查資料,這裡不再囉嗦)

接下來,我們開始最關鍵的部分–ge地圖控制項截獲:

在winform的load事件中加入setgehandlertocontrol函式,編譯並開啟程式 ,這時候你發現你已經成功了。

但是,還不能高興的太早, 還有兩個問題需要解決。你會發現從ge截獲的地圖控制項並不會隨著你自定義窗體的大小改變而改變,另外,你自定義窗體關閉之後,ge的程序還沒有被殺掉,進而引起下次啟動ge的時候地圖控制項會消失掉。不用急,是問題總會有解決的辦法。再定義下面兩個函式

**//----------------------------------

///

/// 使ge控制項的大小和父窗體的大小保持一致

///

public void resizegecontrol()

}///

/// 釋放ge控制代碼

///

public void realsegehandler()

}finally

}//----------------------------------

resizegecontrol函式放在pnlearth控制項的sizechanged事件中,這樣每次panel大小改變,ge的地圖控制項的大小也會隨之改變; realsegehandler函式放在winform的formclosing事件中,以釋放ge的窗體控制代碼。

經過上面幾個步驟,就實現了ge地圖控制項的截獲。接下來要做一些基於ge的開發,我們就可以擺脫ge那一成不變的摸樣了。

postek二次開發 POSTEK二次開發介面

例項簡介 例項截圖 核心 using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.text using ...

mcms二次開發 YzmCMS二次開發手冊

摘要 yzmcms是採用mvc設計模式開發,基於模組和操作的方式進行訪問,採用單一入口模式進行專案部署和訪問,無論訪問任何乙個模組或者功能,只有一.yzmcms是採用mvc設計模式開發,基於模組和操作的方式進行訪問,採用單一入口模式進行專案部署和訪問,無論訪問任何乙個模組或者功能,只有乙個統一的入口...

mcms二次開發 YzmCMS二次開發手冊

yzmcms是採用mvc設計模式開發,基於模組和操作的方式進行訪問,採用單一入口模式進行專案部署和訪問,無論訪問任何乙個模組或者功能,只有乙個統一的入口。一 基本目錄結構.根目錄 cache 快取目錄 必須可寫入 common 全站公共目錄 必須可寫入 uploads 預設上傳目錄 必須可寫入 yz...