JRubyFX

WebEngineでJRubyとHTML間で連携をしてみる

JRuby(JRubyFX)とWebView上のHTMLの連携を試してみる。JRuby側のボタンを押したらHTML上のspanにメッセージを表示して、 HTML上のボタンを押したらJRuby側のラベルにメッセージを表示するプログラムは、RubyコードとHTMLコードの2つを用意します。 require…

重い処理をバックグラウンドスレッド実行させてみる

重い処理をTimeline上に書いてしまうと、処理中はGUIが止まってしまうことになります。 それを回避するためにServiceとTaskを用いる方法があります。 重い処理をTaskに書いて、バックグラウンド実行し、GUIで定期的にモニタリングするようなプログラムを作っ…

円を左右に動かすアニメーション

JRubyFXでアニメーションをやりたくて、まずは簡単なところから始めてみた。 はじめに、サークルを描画して、大きさを150、色をgreen、位置を縦方向に200の場所においた。 そのあと、play関数を呼んで、 そこで、idが"c"となっているサークルのX方向をtimeli…

Timelineを用いて1秒ごとに時刻を表示するプログラム

JRubyFXによるアニメーションを調べていて、まずは簡単なところから始めてみようと思う。 テキスト(ラベル)を1秒ごとに更新するプログラムを作成してみた。 Timelineに登録されたハンドラを1000msごとに呼ぶという単純なプログラムになっている。 require …

JRubyFXでWebブラウザを作ってみる

JavaFxになってSwingと比べてWebViewのエンジンが強化されているようです。 SwingでJavascriptとかHTML5とかがうまく動かなかったのがJavaFXではちゃんと動くっぽいです。 まずは簡単なWeb表示 require 'jrubyfx' class App < JRubyFX::Application def star…

これはいい!JRubyFX+SceneBuilder(fxml)を使ったGUI開発

JRubyFXはJavaFxをRubyっぽく書けますが、 そこにプラスしてfxmlを使うとよりGUI開発が簡単になります。 ここではJRubyFXでfxmlを使う方法をメモとして残します。 まずはJRubyでfxmlをロードする Scene Builderを使って、適当にhello.fxmlというファイルを作…

JRubyFXでボタンを押してラベルに表示するのを試してみた

jrubyfxのsampleをいろいろあさって、ボタンを押したらラベル表示を更新する簡単な実装を試してみました。実装イメージはこんな感じ。 hello2.rb require 'jrubyfx' class Hello < JRubyFX::Application def start(stage) with(stage, title: "sample", widt…

JRubyFXでまずは簡単なラベル表示をしてみた

まだ、JavaFXもよく理解していないですが、適当に実装してみます。 とりあえず、ラベルを使って文字列を表示するところから。 stage上に、まずはsceneを作って、その上にlabelとか貼っていけばよさそうです。イメージはたぶんこんな感じ。 hello.rb require …

JRubyFX+FXMLのデモを動かしてみた

今日試した限りでは、JRubyFXがrubygemsに登録されているものは動かなくて、直接githubから持ってきて、ようやく動きました。 2003/05/20にjrubyfxのバージョン1.0.0なるものがrubygemsにアップされたようです。 おそらく、FXMLローダあたりのバグが解消され…

JRubyFXのHelloWorldを実行してみた。

準備 # jruby -S gem install jrubyfx Hello.rb require 'jrubyfx' class HelloWorldApp < JRubyFX::Application def start(stage) stage.title = "Hello World!" stage.width = 200 stage.height = 100 stage.show() end end HelloWorldApp.launch