Ich möchte eine einfache GUI-Anwendung erstellen, die eine Karte einer Stadt anzeigt.
Ich möchte dann programmatisch Elemente (Assets) wie Hotels, Restaurants zu dieser Karte als Bilder hinzufügen.
Pseudo-Code würde wie folgt aussehen
[set up background object with map image covering entire form]
[create hotel1 object (image, label with icon or whatever]
hotel1.image = "hotel.png";
hotel1.size-x = 30;
hotel1.size-y = 30;
hotel1.location-x = 450; (pixels)
hotel1.location-y = 300;
background-object.add(hotel1);
[create restaurant1 object (image, label with icon or whatever]
restaurant1 .image = "hotel.png";
restaurant1 .size-x = 30;
restaurant1 .size-y = 30;
restaurant1 .location-x = 600; (pixels)
restaurant1 .location-y = 400;
background-object.add(restaurant1);
[repeat for hotel2, hotel3, restaurant2 etc...]
Auf diese Weise konnte ich der Karte eine beliebige Anzahl von Assets hinzufügen. Die anderen Funktionen, die ich benötigen würde, sind
-
das Bild eines Assets ändern (z. B. um ein anderes Bild für ein Asset anzuzeigen)
hotel1.image = "hotel_closed.png";
-
Überschneidung von Vermögenswerten (wenn sie nahe beieinander liegen)
-
einen Click-Event-Handler für jedes Asset registrieren
-
Sichtbarkeit der Anlage ändern
hotel1.visible = false;
Ich bin ein erfahrener .Net-Programmierer. Diese Aufgabe wäre eine einfache Aufgabe in .Net, aber ich bin mir nicht im Klaren darüber, wie ich die obige Aufgabe in Java am besten bewältigen kann. Könnte mir bitte jemand einen Vorschlag machen, wie ich das am besten erreichen kann? Ich bin gerne bereit, zu googeln, wenn ein Konzept vorgeschlagen wird (ich brauche keine vollständig codierte Lösung!!)
Vielen Dank, Ian