こんにちはスタックオーバーフローコミュニティ、
私はJava初心者で、(動的)ソースから座標(latとlon)を取得し、JMapViewer(はい、JXMapViewerではありません)を使用してマーカーをマップに表示する単純なJavaプロジェクトを実行しています。すべての座標を2つのArrayListに入れました。それはそのように見えます:
for(int i = 0; i < latArrayList.size(); i++){
map.addMapMarker(new MapMarkerDot((double)latArrayList.get(i), (double)longArrayList.get(i)));
}
編集:マップはjMapViewerオブジェクトです。
そして、それはかなりうまく機能します。問題は、タイマーを使用して20秒ごとにこのマップを更新する必要があることです。私が見つけた唯一の方法は、次のようにマップを開閉することでした。
theMap.setVisible(false);
theMap = new Map();
theMap.setVisible(true);
編集:theMapはオブジェクトです(jMapViewerではなくjFrame)メイン関数で作成し(デモのように)、addMapMarkerを使用できません(theMap.addMapMarker(150.2,150.2)のように)
そして、ご想像のとおり、これはかなり厄介です(20秒ごとにウィンドウが開閉し、前の「ブラウジング」セッションが失われます)。それで、それをリフレッシュする方法はありますか?マーカーを動的に追加するか、コンテンツを更新するだけですか?
どうもありがとう。