Archive for 12月 2nd, 2012

  1. Hello, Swing(Clojure) World!

    Posted on 12月 2nd, 2012 by cx20

    Swing(Clojure)

    Swing は AWT(Abstract Window Toolkit) を拡張したものであり Java で GUI を扱うためのライブラリである。
    J2SE 1.2 以降は AWT よりも Swing が使われることが多くなっている。
    以下は Clojure による Swing の使用例となっている。

    ソースコード

    (import (javax.swing JFrame)
            (javax.swing JLabel))
     
    (def frame
      (JFrame.))
     
    (def label
      (JLabel. "Hello, Swing World!"))
     
    (doto label
      (.setVerticalAlignment JLabel/TOP))
     
    (doto frame
      (.setDefaultCloseOperation
        javax.swing.WindowConstants/EXIT_ON_CLOSE)
      (.add label)
      (.setSize 640 480)
      (.setTitle "Hello, World")
      (.setResizable false)
      (.setVisible true))

    実行方法

    C:¥> clj Hello.clj

    実行結果

    +------------------------------------------+
    |Hello, World!                    [_][~][X]|
    +------------------------------------------+
    |Hello, Swing World!                       |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    |                                          |
    +------------------------------------------+