在Clojure中执行GUI的最佳方法是什么?
2022-08-31 07:31:12
我会谦虚地建议跷跷板。
这是一个基于REPL的教程,假设没有Java或Swing知识。
跷跷板很像@tomjen所暗示的那样。这是“你好,世界”:
(use 'seesaw.core)
(-> (frame :title "Hello"
:content "Hello, Seesaw"
:on-close :exit)
pack!
show!)
这是@Abhijith和@dsm的例子,翻译得很直白:
(ns seesaw-test.core
(:use seesaw.core))
(defn handler
[event]
(alert event
(str "<html>Hello from <b>Clojure</b>. Button "
(.getActionCommand event) " clicked.")))
(-> (frame :title "Hello Swing" :on-close :exit
:content (button :text "Click Me" :listen [:action handler]))
pack!
show!)
Stuart Sierra最近发表了一系列关于GUI-development with clojure(和swing)的博客文章。从这里开始:http://stuartsierra.com/2010/01/02/first-steps-with-clojure-swing