オフスクリーンのGoogle Earthをパネルに表示しますか?
-
03-07-2019 - |
質問
.NET WebBrowserコントロールからGoogle Earthブラウザプラグインによって作成されたグラフィックスオブジェクトをキャプチャすることは可能ですか?
このグラフィックオブジェクトを使用して、パネルの背景画像として使用する画像を作成し、その上に描画できます。
Google Earthプラグインが機能しないため、Panelコントロールの下でWebBrowserコントロールを使用することはできません。
ブラウザグラフィックスオブジェクトを取得すると、空白が返されます。ブラウザのDrawToBitmapメソッド(インテリセンスなし)はWebページを返しますが、Google Earthの画像は返しません。
アイデアはありますか
解決 3
これ以上の調査と試行錯誤の後、この件で敗北を認めざるを得ませんが、ウェブブラウザコントロールが画面外にある場合、パネル上にGoogle Earthを表示することはできません。
解決策は、制限付きで生活することです:
- 背景に描画するフォームを透明に設定します
- 描画フォームの親となる新しいフォームを作成
- 新しいフォームでGoogle Earthを表示
- フォームを正しく配置し、子が親を操作できるようにします
または概念実証が既に存在するため、Microsoft Live Earthに切り替えるWPFおよびwinformsの場合。
他のヒント
私のこのプロジェクトをご覧ください: http:// code .google.com / p / winforms-geplugin-control-library / がサポートに役立ちます。ここでのコツは、プラグインから現在の画像をビットマップとしてキャプチャし、これを使用することです(ダブルバッファリングなど)。
特に、「GEToolStrip.cs」の「ScreenGrabButton_Click」メソッドを参照して、画像のキャプチャ方法を確認してください。
質問を誤解した場合、申し訳ありません。WindowsフォームプログラムでGoogle Earthを表示しようとしていますか?その場合は、Google Earth COM APIをご覧ください。