在一个名为 的源文件gui.clj
中,我定义了一个框架 ,fr
它保存了我的应用程序的窗口,如下所示:
(def fr (frame ...))
以及一个在数据更改时run
设置fr
并使其重新绘制的函数,类似于这样(以scribble.clj为模型:
(defn run []
(-> fr add-behaviors pack! show!)
(when-data-changes
(swap! state assoc :shapes (dot/g->seesaw t/ws))
(repaint! fr)))
由于我在 REPL 中搞乱,我经常修改一个源文件,然后调用c.t.n.repl/refresh
. 当我run
再次运行时,它会弹出一个新窗口,将旧窗口留在屏幕上。即使在刷新后,如何让我的(新更新的)代码在同一个窗口上运行?