Frage von gut4fr5g4, 57

Javafx diese if abfrage sinnvoll?

http://hastebin.com/utakudeheb.coffee

Ich will damit abfragen, ob das Rectangle "Rectangle[10]", dem ich vorher ein Bild mit "setFill" zugewiesen habe, das Bild "image" beinhaltet (klingt erstmal sinnlos, aber fragt jetzt nicht "was willst du damit denn machen, sondern beantwortet einfach bitte meine frage)

Danke im voraus!

Antwort
von Schachpapa, 30

Ich fürchte das klappt nicht so, wie du es haben möchtest.

Du kannst zwar mit getFill das ImagePattern holen, das equals entspricht dann aber einem == (Identität), da equals in ImagePattern nicht überschrieben wird sondern von Object erbt. Es vergleicht also nicht den Inhalt zweier Patterns sondern prüft auf Identität.

Vielleicht reicht das ja für deine Anwendung.

Antwort
von androhecker, 39

Man kann kein Image mit der setFill() Methode zuweisen, da dieses nicht von Paint erbt. Somit kann die getFill() Methode auch unmöglich eine Instanz von Image zurückgeben.

Kommentar von Schachpapa ,

Man muss vorher aus dem Image ein ImagePattern machen, dann geht's.

Kommentar von androhecker ,

Ja, aber dann kommt immer noch kein Image zurück.

Kommentar von gut4fr5g4 ,

Wie kann ich denn mit if fragen, ob das das selbe image enthält?

Kommentar von androhecker ,

Zu ImagePattern casten (wenn du andere Paints auch verwendest, erst mit instanceof testen), dieses hat die getImage() Methode.

Antwort
von ceevee, 20

Mit Hinblick auf http://www.gutefrage.net/frage/java-frage-zu-equals

Dass du keine guten Antworten kriegst, liegt daran, dass du keine guten Fragen stellst. Wenn du zuhause bist, dann probierst du einfach aus, ob das klappt und falls nicht, dann siehst dann im Debugger bzw. in der Fehlermeldung, warum nicht. Genau das würden andere Programmierer nämlich auch erstmal tun - es einfach ausprobieren.

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten