Hinzufügen von Feldern zu einer proxied Klasse in Clojure

8

Ich verwende "proxy", um verschiedene Swing-Klassen in einer Clojure-GUI-Anwendung zu erweitern, im Allgemeinen mit Code, der ungefähr so ​​aussieht:

%Vor%

Das funktioniert gut, aber ich kann nicht herausfinden, wie man der neu erweiterten Klasse zusätzliche Felder hinzufügt, zum Beispiel das Hintergrundbild zu einem Feld machen, das später aktualisiert werden könnte. Dies wäre ziemlich einfach und in Java üblich.

Gibt es einen guten Weg, dies in Clojure zu tun? Oder gibt es eine andere bevorzugte Methode, um denselben Effekt zu erzielen?

    
mikera 16.06.2010, 20:45
quelle

2 Antworten

9

Sie können etwas wie folgt verwenden:

%Vor%

oder verwenden Sie eine andere äußere Funktion / Ref.

    
Igor Artamonov 16.06.2010, 20:59
quelle
2

Schamlose Eigenwerbung: Ich habe vor einiger Zeit einen Blogpost geschrieben über Proxy und seinen Gotchas.

    
kotarak 17.06.2010 06:08
quelle

Tags und Links