今日の質問は、地図ビューを JavaFX アプリケーションに埋め込むことについてです。私は基本的にStackOverFlow の指示に従いました - JavaFXに Google マップを埋め込み、 OpenStreetMap を使用して OpenLayers を埋め込む*.html
ため、ファイルのようなものはすべて整っています。しかし、人々はWebView
mainに を追加していScene
ます。WebView
私にとっては、 を に追加したいと思いSplitPane
ます。application.fxml
したがって、次のようにファイルを準備しました。
<SplitPane id="SplitPane" dividerPositions="0.5" orientation="HORIZONTAL" prefHeight="260.0" prefWidth="850.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<items>
<TableView id="tableView1" fx:id="table" prefHeight="263.0" prefWidth="433.0">
<columns>
<TableColumn text="one" /><TableColumn text="two" /><TableColumn text="three" />
</columns>
</TableView>
<AnchorPane prefHeight="200.0" prefWidth="200.0">
<children>
<Region fx:id="webViewRegion" prefHeight="200.0" prefWidth="200.0" />
</children>
</AnchorPane>
</items>
</SplitPane>
FXML ファイルはFXMLLoader
、アプリケーションの起動時に によってロードされます。アプリケーションコントローラーでは、次のRegion
ようになります。
@FXML
private Region webViewRegion;
class MyMapView extends Region {
HBox toolbar;
WebView webview = new WebView();
WebEngine webEngine = webview.getEngine();
public MyMapView() {
final URL urlGoogleMaps = getClass().getResource("openstreetmap.html");
webEngine.load(urlGoogleMaps.toExternalForm());
getChildren().add(webview);
}
}
private void load_webView() {
webViewRegion = new MyMapView();
}
私にとって、正しい方法で にデータを入力する方法、またはより良い方法があるかRegion
どうかが正確にわかりませんか?Webview