Hi,

On Mar 8, 12:44 am, stefanmuenchow <stefanmuenc...@gmx.de> wrote:

>     (.addActionListener convert-button
>       (proxy [ActionListener] []
>         (actionPerformed [evt]
>           (.show frame2)
>           (complex-calc)
>           (.setText temp-text "Calc1")
>           (complex-calc)
>           (.setText temp-text "Calc2")
>           (complex-calc)
>           (.setText temp-text "Calc3"))))))

Your actionPerformed method is called on the event dispatch thread of
Swing. You do your calculation but block the thread until it is
complete. So the GUI never gets the chance to update. You have to fire
off a background thread, which does the computation and update the GUI
from there via (SwingUtilies/invokeLater (fn [] (.setText temp-text
"Calc1"))). Have a look at clojure.contrib.swing-utils for convenience
wrappers for Swing.

Reading a little background on how Swing works is also a good idea.

Sincerely
Meikel

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to