Objekt einer Klasse OnClick

stoerte12

Mitglied
Hallo Leute,

ich glaube ich habe einen kleinen Denkfehler oder komme eben einfach nicht auf die Lösung. 🙂

Vorab, ich benutze JavaFX.

Und zwar habe ich eine ganz normale Klasse Knoten.
Java:
public class Knoten {
    private int knotenNummer;
    private double knotenPosition;

    public Knoten(){

    }

    public Knoten(int knotenNummer, double knotenPosition){
        this.knotenNummer = knotenNummer;
        this.knotenPosition = knotenPosition;
    }

    public int getKnotenNummer() {
        return knotenNummer;
    }

    public void setKnotenNummer(int knotenNummer) {
        this.knotenNummer = knotenNummer;
    }

    public double getKnotenPosition() {
        return knotenPosition;
    }

    public void setKnotenPosition(double knotenPosition) {
        this.knotenPosition = knotenPosition;
    }

}

Wenn ich jetzt mit der Maus auf eine Position im Fenster klicke, möchte ich ein neues Objekt der Klasse Knoten erzeugen.

Java:
ViewA.paneLinie.setOnMouseClicked(new EventHandler<MouseEvent>() {
    @Override
    public void handle(MouseEvent event) {
     Knoten knoten1 = new Knoten(1, Position)
   
  
    }


});
Also ich verstehe wie ich es einmal machen kann.

Aber wie stellt man es an, dass jedesmal ein anderer Name vergeben wird und ich so z.B fünf Knotenpunkte erschaffen kann und danach von jedem einzelnen also z.B. knoten3 die position mit der get methode bekommen kann?

Ich hoffe ich habe mein Problem gut geschildert. 🙂
Ich komm irgendwie nicht dahinter und hab auch keine Lösung im Internet gefunden. :-(

Ein Lösungsansatz von mir ist ein Array:
Java:
Knoten[] knotenpunkte = new Knoten[100];
for (int n=0;n<100;n++) {
    Knoten knoten = new Knoten();
    knotenpunkte[n]= knoten;
}

Aber dann weiß ich nicht , wie ich auf den Ersten, dann den Zweiten usw. zugreife.
Super vielen Dank schonmal für die Hilfe,
Stoerte12
 
Zuletzt bearbeitet:
mit 'knotenpunkte[0]', 'knotenpunkte[1]', 'knotenpunkte[2]' usw.
Das hilft nicht viel da er sich sein Array ja immer mit dem selben Knoten vollschreibt. Na ja nicht mit dem selben aber einfach mit 100 Knoten. Was willst du denn erreichen ? dass das Array nach und nach mit Knoten gefüllt wird ? Also mit jedem Klick ein neuer Knoten in der nächsten Position des Arrays ? Was soll passieren wenn das Array voll ist ? Sollen Knoten wieder gelöscht werden usw.
 
Hi, vielen Dank euch schonmal für die Hilfe.

Ja das mit dem Zugriff stimmt natürlich, ist ja tatsächlich ganz einfach.

Es geht darum, Knotenpunkte zu erschaffen, um Längen von einem zum anderen zu messen, und daher brauche ich auch die Positionen. Soll ein Berechnungsprogramm werden.
Da wäre für mich die nächste Frage:
Kann man z.B. den Knoten mit dem kleinsten Wert knotenPosition ermitteln?

Von der Anzahl her geht es schon, da es nur etwa maximal 20 Knotenpunkte sein könnten.
 
Oh man, jetzt wo du es sagst fällt mir sofort ein, dass ich das schon mehrfach in Büchern gesehen hab. 🙂

Vielen, vielen Dank für die schnelle und nette Hilfe.

Wirklich ein top Forum.

Viele Grüße,
Stoerte12
 

Neue Themen


Zurück
Oben