Archive for 11月 20th, 2012

  1. Hello, Swing(JRuby) World!

    Posted on 11月 20th, 2012 by cx20

    Swing(JRuby)

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

    ソースコード

    require 'java'
     
    import 'javax.swing.JFrame'
    import 'javax.swing.JLabel'
     
    class Hello < JFrame
      def initialize(title)
        super( title )
        self.setDefaultCloseOperation( JFrame::EXIT_ON_CLOSE )
        self.setSize( 640, 480 )
     
        @label = JLabel.new( "Hello, Swing World!" )
        @label.setVerticalAlignment(JLabel::TOP)
        self.add( @label )
      end
    end
     
    @frame = Hello.new( "Hello, World" )
    @frame.setVisible( true )

    実行方法

    C:¥> jrubyw Hello.rb

    実行結果

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