Re: [jruby-user] JRubyFX simple EventHandler

Thomas E Enebo <[email protected]> Mon, 11 May 2015 10:47:22 -0500
Newsgroups gmane.comp.lang.jruby.user
Message-ID <CAL5zZV=1VOz=qe4cb0KbwhyHmTka=DygYf6DOuD-ZbCBwyYELw@mail.gmail.com>
--001a1134ec9632ab930515d04b13
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

require 'jrubyfx'

class HelloWorldApp < JRubyFX::Application
  def start(stage)
    with(stage, title: "Hello World!", width: 800, height: 600) do
      layout_scene do
        button("Click me") do
          set_on_action { |e|  puts "PRESSED" }
        end
      end
    end.show
  end
end

HelloWorldApp.launch


On Mon, May 11, 2015 at 10:10 AM, Rodrigo Botafogo <
[email protected]> wrote:

> Hello=E2=80=A6
>
> I=C2=B4m trying to write a very simple JRubyFX application with an EventH=
andler.
> My code now:
>
> require 'jrubyfx'
>
> class HelloWorldApp < JRubyFX::Application
>
>   def start(stage)
>
>     with(stage, title: "Hello World!", width: 800, height: 600) do
>       layout_scene do
>         button("Click me")
>         # button.setOnAction(new Bt_Action)
>       end
>     end
>
>     stage.show # Tip: most of the time, () can be removed from method cal=
ls
>
>   end
>
> end
>
> Is it possible to write a button.setOnAction without writing a FXML file?
>
>
> Thanks
> =E2=80=8B
> --
> Rodrigo Botafogo
>
>
>
>


--=20
blog: http://blog.enebo.com       twitter: tom_enebo
mail: [email protected]

--001a1134ec9632ab930515d04b13
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">require &#39;jrubyfx&#39;<br><br>class HelloWorldApp &lt; =
JRubyFX::Application<br>=C2=A0 def start(stage)<br>=C2=A0=C2=A0=C2=A0 with(=
stage, title: &quot;Hello World!&quot;, width: 800, height: 600) do<br>=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 layout_scene do<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 button(&quot;Click me&quot;) do<br>=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 set_on_action { |e|=C2=A0 puts &quot;PRESSED=
&quot; }<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 end<br>=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 end<br>=C2=A0=C2=A0=C2=A0 end.show<br>=C2=A0 end<br>end<=
br><br>HelloWorldApp.launch<br><br></div><div class=3D"gmail_extra"><br><di=
v class=3D"gmail_quote">On Mon, May 11, 2015 at 10:10 AM, Rodrigo Botafogo =
<span dir=3D"ltr">&lt;<a href=3D"mailto:[email protected]" target=
=3D"_blank">[email protected]</a>&gt;</span> wrote:<br><blockquot=
e class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc sol=
id;padding-left:1ex"><div dir=3D"ltr"><div><p style=3D"margin:1.2em 0px!imp=
ortant">Hello=E2=80=A6</p>
<p style=3D"margin:1.2em 0px!important">I=C2=B4m trying to write a very sim=
ple JRubyFX application with an EventHandler.<br>My code now:</p>
<pre style=3D"font-size:0.85em;font-family:Consolas,Inconsolata,Courier,mon=
ospace;font-size:1em;line-height:1.2em;margin:1.2em 0px"><code style=3D"fon=
t-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px=
 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234=
,234);border-radius:3px;display:inline;background-color:rgb(248,248,248);wh=
ite-space:pre-wrap;overflow:auto;border-radius:3px;border:1px solid rgb(204=
,204,204);padding:0.5em 0.7em;display:block!important">require &#39;jrubyfx=
&#39;

class HelloWorldApp &lt; JRubyFX::Application

  def start(stage)

    with(stage, title: &quot;Hello World!&quot;, width: 800, height: 600) d=
o
      layout_scene do
        button(&quot;Click me&quot;)
        # button.setOnAction(new Bt_Action)
      end
    end

    stage.show # Tip: most of the time, () can be removed from method calls

  end

end
</code></pre><p style=3D"margin:1.2em 0px!important">Is it possible to writ=
e a button.setOnAction without writing a FXML file?</p><p style=3D"margin:1=
.2em 0px!important"><br></p><p style=3D"margin:1.2em 0px!important">Thanks<=
/p>
<div title=3D"MDH:SGVsbG8uLi48ZGl2Pjxicj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2P=
knCtG0gdHJ5aW5nIHRv
IHdyaXRlIGEgdmVyeSBzaW1wbGUgSlJ1YnlGWCBhcHBsaWNhdGlvbiB3aXRoIGFuIEV2ZW50SGF=
u
ZGxlci48L2Rpdj48ZGl2Pk15IGNvZGUgbm93Ojxicj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl=
2
PjxkaXY+Jm5ic3A7ICZuYnNwOyByZXF1aXJlICdqcnVieWZ4JzwvZGl2PjxkaXY+PGJyPjwvZGl=
2
PjxkaXY+Jm5ic3A7ICZuYnNwOyBjbGFzcyBIZWxsb1dvcmxkQXBwICZsdDsgSlJ1YnlGWDo6QXB=
w
bGljYXRpb248L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgJm5ic3A7IGR=
l
ZiBzdGFydChzdGFnZSk8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgJm5=
i
c3A7ICZuYnNwOyB3aXRoKHN0YWdlLCB0aXRsZTogIkhlbGxvIFdvcmxkISIsIHdpZHRoOiA4MDA=
s
IGhlaWdodDogNjAwKSBkbzwvZGl2PjxkaXY+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZ=
u
YnNwOyBsYXlvdXRfc2NlbmUgZG88L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnN=
w
OyAmbmJzcDsgJm5ic3A7IGJ1dHRvbigiQ2xpY2sgbWUiKTwvZGl2PjxkaXY+Jm5ic3A7ICZuYnN=
w
OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgIyBidXR0b24uc2V0T25BY3Rpb24obmV3IEJ=
0
X0FjdGlvbik8L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgZW5=
k
PC9kaXY+PGRpdj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgZW5kPC9kaXY+PGRpdj48YnI=
+
PC9kaXY+PGRpdj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgc3RhZ2Uuc2hvdyAjIFRpcDo=
g
bW9zdCBvZiB0aGUgdGltZSwgKCkgY2FuIGJlIHJlbW92ZWQgZnJvbSBtZXRob2QgY2FsbHM8L2R=
p
dj48ZGl2Pjxicj48L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgJm5ic3A7IGVuZDwvZGl2PjxkaXY=
+
PGJyPjwvZGl2PjxkaXY+Jm5ic3A7ICZuYnNwOyBlbmQ8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl=
2
PklzIGl0IHBvc3NpYmxlIHRvIHdyaXRlIGEgYnV0dG9uLnNldE9uQWN0aW9uIHdpdGhvdXQgd3J=
p
dGluZyBhIEZYTUwgZmlsZT88L2Rpdj48L2Rpdj4=3D" style=3D"min-height:0;width:0;m=
ax-height:0;max-width:0;overflow:hidden;font-size:0em;padding:0;margin:0">=
=E2=80=8B</div></div><span class=3D"HOEnZb"><font color=3D"#888888"><div>--=
 <br><div><div dir=3D"ltr">Rodrigo Botafogo<div><br><br><div><br></div></di=
v></div></div>
</div></font></span></div>
</blockquote></div><br><br clear=3D"all"><br>-- <br><div class=3D"gmail_sig=
nature">blog: <a href=3D"http://blog.enebo.com" target=3D"_blank">http://bl=
og.enebo.com</a>=C2=A0 =C2=A0 =C2=A0=C2=A0 twitter: tom_enebo<br>mail: <a h=
ref=3D"mailto:[email protected]" target=3D"_blank">[email protected]</a=
></div>
</div>

--001a1134ec9632ab930515d04b13--