当前位置: 首页 > 面试题库 >

在Clojure中制作GUI的最佳方法是什么?

姜锋
2023-03-14
问题内容

在Clojure中制作 GUI的最佳方法是什么?

有一些功能性Swing或SWT包装器的示例吗?还是与JavaFX声明性GUI描述进行了某些集成,可以使用某些宏轻松地将它们包装到s表达式中?

有教程吗?


问题答案:

我会谦虚地建议跷跷板。

这是一个基于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!)


 类似资料:
  • 问题内容: 复制列表的最佳方法是什么?我知道以下方法,哪种更好?还是有另一种方法? 问题答案: 如果要浅拷贝(不复制元素),请使用: 如果要进行深层复制,请使用复制模块:

  • 问题内容: 在表A中插入信息并使用表A中的索引与表B相关的最佳方法是什么? 我尝试的“解决方案”是将信息插入表A(具有自动生成的ID),然后选择最后一个索引并将其插入表B。这可能不是很有用,因为最后一个索引可能会在表A和表B之间变化。插入是因为另一个用户可以在表A中生成新索引 我在各种DBMS postgreSQL,Informix,MySQL和MSSQL中遇到了这个问题(感谢lomaxx的回答)

  • 问题内容: 我使用带有文本区域(JTextArea)的Swing创建了一个应用程序。我想创建一个“编辑”菜单,其中包含从文本区域剪切和复制文本,以及将剪贴板中的文本粘贴到文本区域的选项。 我已经看到了几种方法来做到这一点,但是我想知道最好的方法是什么。我应该如何执行剪切/复制/粘贴? 问题答案: 我个人会选择重复使用标准的剪切,复制和粘贴操作。在Swing拖放教程中对此进行了说明:添加剪切,复制和

  • 问题内容: 这对我来说是一个耻辱,但我不知道: 您应该使用克隆来复制阵列,因为通常这是最快的方法。 如Josh Bloch在此博客中所述:http : //www.artima.com/intv/bloch13.html 我一直都习惯。两种方法都是本机的,所以可能没有深入研究我不知道的库来源,为什么会这样。 我的问题很简单:为什么这是 最快的 方法? 有什么区别 ? 此处 说明了差异,但未回答为何

  • 问题内容: 我正在寻找一种库/方法来解析比通用xml解析库具有更多html特定功能的html文件。 问题答案: 这是一个敏捷的HTML解析器,它构建了一个读/写DOM并支持纯XPATH或XSLT(您实际上不必了解XPATH或XSLT来使用它,不用担心…)。这是一个.NET代码库,可让您解析“网络外” HTML文件。该解析器对“真实世界”格式的HTML十分宽容。对象模型与提出System.Xml的对

  • 我有一个Android应用程序,我想实现一个功能,用户可以上传SVG,然后将SVG保存在firebase实时数据库中,然后其他用户可以看到它并与之交互,我选择SVG而不是常规照片或PNG的原因是因为它非常小,不会消耗存储或数据来加载, 加上它们具有多种显示密度和不同的屏幕比例更好,问题是我不知道这是否可行,如果它是我不知道它将被保存为的格式是什么,因为我有一个保存SVG路径的想法,但没有找到将其转