JavaFX<br />Clodoaldo Brasilino Leite Neto<br />clodbrasilino@gmail.com<br />
O que é JavaFX?<br />
O que é JavaFX?<br />
A Plataforma JavaFX<br />
A Plataforma JavaFX<br />Uma família de tecnologias<br />JavaFXRuntime<br />JavaFX Script<br />JavaFXTools<br />Para quem?...
JavaFX,Flex ou Silverlight?<br />
Java, Flash ou .Net?<br />
Sun, Adobe ou Microsoft?<br />
Temos Flex e Silverlight... Por que JavaFX?  <br />
Por que JavaFX?<br />Uma única plataforma RIA para todas as telas<br />Mercado de amplo alcance<br />Fluxo de trabalho des...
Exemplos de Aplicação JavaFX<br />
Exemplos de Aplicação JavaFX<br />
Por onde começar?<br />
Sites básicos<br />JavaFX<br />http://javafx.com/<br />JavaFXDeveloperHome<br />http://java.sun.com/javafx/<br />JavaFXPro...
Ferramentas Atuais<br />Windows, Linux, Mac OS X e Solarisx86<br />JavaFX 1.2 SDK<br />NetbeansIDE 6.5.1 para JavaFX 1.2<b...
JavaFX Script<br />
Tipos “Primitivos”<br />Tipos de dados básicos (não nulos)<br />Integer<br />Number<br />Boolean<br />Duration<br />String...
varstring1= “JavaFX&quot;; <br />varstring2: String = “JavaFX&quot;;<br />varinteger1= 3;<br />varinteger2: Integer= 3;<br...
Tolo! Você não declarou o tipo de suas variáveis! Irá arder no fogo do inferno e seu código não compilará!<br />
Não precisa, rapaz! JavaFX possui INFERÊNCIA DE TIPOS!<br />
println(“JavaFXrules”);<br />//JavaFXrules<br />println(‘JavaFXrules’);<br />//JavaFXrules<br />println(“JavaFX ‘rules’ ”)...
varstring1= “JavaFX&quot;;<br />varstring2: String = “rules&quot;;<br />println(“{string1} {string2}”);<br />//JavaFXrules...
Operadores<br />Integer e Number:<br />+<br />-<br />*<br />/<br />mod<br />Boolean<br />and<br />or<br />not<br />
vart1: Duration= 1ms;<br />vart2= 1s;<br />vart3= 1m;<br />vart4= 1h;<br />println(&quot;{t1} {t2} {t3} {t4}&quot;);<br />...
Functions<br />
defPI= 3.1416;<br />functioncalcArea(raio: Number): Number{<br />returnPI* raio * raio;<br />}<br />varraio= 5;<br />varar...
defPI= 3.1416;<br />functioncalcArea(raio: Number) {<br />returnPI* raio * raio;<br />}<br />varraio= 5;<br />vararea= cal...
defPI= 3.1416;<br />functioncalcArea(raio: Number) {<br />PI* raio * raio;<br />}<br />varraio= 5;<br />vararea= calcArea(...
defPI= 3.1416;<br />var calcArea=function(raio: Number) {<br />PI* raio * raio;<br />}<br />varcalcPerimetro=function(raio...
defPI= 3.1416;<br />var calcArea=function(raio: Number) {<br />PI* raio * raio;<br />}<br />varcalcPerimetro=function(raio...
class A{<br />varx= 0;<br />functiongetx(){<br />x;<br />	}<br />}<br />vara= A{x:1};<br />varb= A{x:2};<br />varf= a.getx...
Binding<br />
varx = 1;<br />vary = bindx;<br />varz = bindy * 2;<br />println(&quot;{x} {y} {z}&quot;);//1 1 2<br />x = 2;<br />println...
vara = 1;<br />varb = bindawithinverse;<br />println(&quot;{a} {b}&quot;);//1 1<br />a = 2;<br />println(&quot;{a} {b}&quo...
varx = 10;<br />vary = 20;<br />varrect1 = Rectangle{<br />	x: bindx;<br />	y: bindy;<br />}; <br />varrect2 = bindRectang...
defPI = 3.1416;<br />varraio = 5;<br />boundfunctioncalcArea(){<br />PI * raio * raio;<br />}<br />vararea = bindcalcArea(...
vara = 1 on replace old{<br />println(&quot;changing&quot;);<br />println(&quot;old: {old}&quot;);<br />println(&quot;new:...
vara = 1 on replace old{<br />println(&quot;changing&quot;);<br />println(&quot;old: {old}&quot;);<br />println(&quot;new:...
GUI com JavaFX<br />
publicclassHelloWorldSwing{<br />publicstaticvoidmain(String[] args){<br />JFrameframe = newJFrame(&quot;HelloWorldSwing&q...
Stage{<br />title: &quot;HelloWorld em JavaFX&quot;<br />width: 250 height: 80<br />scene: Scene{<br />content: Text{<br /...
Stage{<br />title: &quot;Declarar ehfacil!&quot;<br />width: 250<br />height: 250<br />}<br />Hello World com JavaFX<br />
Stage{<br />title: &quot;Declarar ehfacil!&quot;<br />scene: Scene{<br />width: 250<br />height: 250<br />}<br />}<br />He...
Objetos em Content<br />
Posição dos Objetos na cena<br />
Posição dos Objetos em cena<br />
Posição dos Objetos em cena<br />
Transformações<br />
Efeitos<br />
Efeitos e Transformações<br />
Eventos<br />
Agrupamentos<br />
ImageView{<br />image: Image{<br />		url: &quot;{__DIR__}imagem.png&quot;<br />	}<br />rotate: 15<br />scaleX: 2<br />}<br...
Vídeo<br />
Upcoming SlideShare
Loading in …5
×

Tutorial JavaFX simples

13,091 views

Published on

Com a colaboração de José Raphael Marques, criei esta apresentação para treinar o pessoal do NTI com conceitos básicos de JavaFX.

Published in: Education
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
13,091
On SlideShare
0
From Embeds
0
Number of Embeds
48
Actions
Shares
0
Downloads
422
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Tutorial JavaFX simples

  1. 1. JavaFX<br />Clodoaldo Brasilino Leite Neto<br />clodbrasilino@gmail.com<br />
  2. 2. O que é JavaFX?<br />
  3. 3. O que é JavaFX?<br />
  4. 4. A Plataforma JavaFX<br />
  5. 5. A Plataforma JavaFX<br />Uma família de tecnologias<br />JavaFXRuntime<br />JavaFX Script<br />JavaFXTools<br />Para quem?<br />Designers<br />Desenvolvedores<br />
  6. 6. JavaFX,Flex ou Silverlight?<br />
  7. 7. Java, Flash ou .Net?<br />
  8. 8. Sun, Adobe ou Microsoft?<br />
  9. 9. Temos Flex e Silverlight... Por que JavaFX? <br />
  10. 10. Por que JavaFX?<br />Uma única plataforma RIA para todas as telas<br />Mercado de amplo alcance<br />Fluxo de trabalho designer-desenvolvedor<br />Runtime poderoso<br />Liberdade do browser<br />Compatibilidade com tecnologias Java<br />
  11. 11. Exemplos de Aplicação JavaFX<br />
  12. 12. Exemplos de Aplicação JavaFX<br />
  13. 13. Por onde começar?<br />
  14. 14. Sites básicos<br />JavaFX<br />http://javafx.com/<br />JavaFXDeveloperHome<br />http://java.sun.com/javafx/<br />JavaFXPrograming(withPassion!)<br />http://www.javapassion.com/javafx/<br />Raphael Marques – Meu tutor! <br />http://raphaelmarques.wordpress.com/<br />
  15. 15. Ferramentas Atuais<br />Windows, Linux, Mac OS X e Solarisx86<br />JavaFX 1.2 SDK<br />NetbeansIDE 6.5.1 para JavaFX 1.2<br />JavaFX 1.2 ProductionSuite<br />Plugin para Adobe Illustrator e Adobe Photoshop<br />Media Factory<br />JavaFXGraphicsViewer e SVG Converter<br />
  16. 16. JavaFX Script<br />
  17. 17. Tipos “Primitivos”<br />Tipos de dados básicos (não nulos)<br />Integer<br />Number<br />Boolean<br />Duration<br />String<br />Sequence<br />Function<br />
  18. 18. varstring1= “JavaFX&quot;; <br />varstring2: String = “JavaFX&quot;;<br />varinteger1= 3;<br />varinteger2: Integer= 3;<br />varnumber1= 3.0;<br />varnumber2: Number= 3;<br />varnumber3= 3 asNumber;<br />varnumber4= integer1+ number1;<br />Declaração de Variáveis<br />
  19. 19. Tolo! Você não declarou o tipo de suas variáveis! Irá arder no fogo do inferno e seu código não compilará!<br />
  20. 20. Não precisa, rapaz! JavaFX possui INFERÊNCIA DE TIPOS!<br />
  21. 21. println(“JavaFXrules”);<br />//JavaFXrules<br />println(‘JavaFXrules’);<br />//JavaFXrules<br />println(“JavaFX ‘rules’ ”);<br />//JavaFX ‘rules’<br />println(‘JavaFX “rules” ’);<br />//JavaFX “rules”<br />Strings<br />
  22. 22. varstring1= “JavaFX&quot;;<br />varstring2: String = “rules&quot;;<br />println(“{string1} {string2}”);<br />//JavaFXrules<br />“Valor de x: {x}”<br />“Valor de x: {objeto.getX()}”<br />Strings<br />
  23. 23. Operadores<br />Integer e Number:<br />+<br />-<br />*<br />/<br />mod<br />Boolean<br />and<br />or<br />not<br />
  24. 24. vart1: Duration= 1ms;<br />vart2= 1s;<br />vart3= 1m;<br />vart4= 1h;<br />println(&quot;{t1} {t2} {t3} {t4}&quot;);<br />//1ms 500ms 60000ms 3600000ms<br />println(1s+ 500ms);//1500.0ms<br />println(1s/ 500ms);//2.0<br />println(1s*2);//2000.0ms<br />println(1s/2);//500.0ms<br />
  25. 25. Functions<br />
  26. 26. defPI= 3.1416;<br />functioncalcArea(raio: Number): Number{<br />returnPI* raio * raio;<br />}<br />varraio= 5;<br />vararea= calcArea(raio);<br />
  27. 27. defPI= 3.1416;<br />functioncalcArea(raio: Number) {<br />returnPI* raio * raio;<br />}<br />varraio= 5;<br />vararea= calcArea(raio);<br />
  28. 28. defPI= 3.1416;<br />functioncalcArea(raio: Number) {<br />PI* raio * raio;<br />}<br />varraio= 5;<br />vararea= calcArea(raio);<br />
  29. 29. defPI= 3.1416;<br />var calcArea=function(raio: Number) {<br />PI* raio * raio;<br />}<br />varcalcPerimetro=function(raio: Number) {<br />PI* raio * 2;<br />}<br />varcalc= calcArea;<br />println(calc(5));<br />calc= calcPerimetro;<br />println(calc(5));<br />
  30. 30. defPI= 3.1416;<br />var calcArea=function(raio: Number) {<br />PI* raio * raio;<br />}<br />varcalcPerimetro=function(raio: Number) {<br />PI* raio * 2;<br />}<br />varcalc: function(Number):Number= calcArea;<br />println(calc(5));<br />calc= calcPerimetro;<br />println(calc(5));<br />
  31. 31. class A{<br />varx= 0;<br />functiongetx(){<br />x;<br /> }<br />}<br />vara= A{x:1};<br />varb= A{x:2};<br />varf= a.getx;<br />varg= b.getx;<br />println(f());//1<br />println(g());//2<br />
  32. 32. Binding<br />
  33. 33. varx = 1;<br />vary = bindx;<br />varz = bindy * 2;<br />println(&quot;{x} {y} {z}&quot;);//1 1 2<br />x = 2;<br />println(&quot;{x} {y} {z}&quot;);//2 2 4<br />Binding<br />
  34. 34. vara = 1;<br />varb = bindawithinverse;<br />println(&quot;{a} {b}&quot;);//1 1<br />a = 2;<br />println(&quot;{a} {b}&quot;);//2 2<br />b = 3;<br />println(&quot;{a} {b}&quot;);//3 3<br />Binding<br />
  35. 35. varx = 10;<br />vary = 20;<br />varrect1 = Rectangle{<br /> x: bindx;<br /> y: bindy;<br />}; <br />varrect2 = bindRectangle{<br /> x: x;<br /> y: y;<br />}; <br />Binding<br />
  36. 36. defPI = 3.1416;<br />varraio = 5;<br />boundfunctioncalcArea(){<br />PI * raio * raio;<br />}<br />vararea = bindcalcArea();<br />println(area);// 78.53999<br />raio = 10;<br />println(area);// 314.15997<br />Binding<br />
  37. 37. vara = 1 on replace old{<br />println(&quot;changing&quot;);<br />println(&quot;old: {old}&quot;);<br />println(&quot;new: {a}&quot;);<br />};<br />a = 3;<br />Trigger<br />
  38. 38. vara = 1 on replace old{<br />println(&quot;changing&quot;);<br />println(&quot;old: {old}&quot;);<br />println(&quot;new: {a}&quot;);<br />};<br />a = 3;<br />//changing<br />//old: 0<br />//new: 1<br />//changing<br />//old: 1<br />//new: 3<br />Trigger<br />
  39. 39. GUI com JavaFX<br />
  40. 40. publicclassHelloWorldSwing{<br />publicstaticvoidmain(String[] args){<br />JFrameframe = newJFrame(&quot;HelloWorldSwing&quot;);<br />Jlabellabel= newJLabel(&quot;HelloWorld&quot;);<br /> frame.getContentPane().add(label);<br /> frame.setDefaultCloseOperation(<br />JFrame.EXIT_ON_CLOSE);<br /> frame.pack();<br /> frame.setVisible(true);<br /> }<br />}<br />Hello World com Swing<br />
  41. 41. Stage{<br />title: &quot;HelloWorld em JavaFX&quot;<br />width: 250 height: 80<br />scene: Scene{<br />content: Text{<br />content: &quot;HelloWorld!&quot;<br /> x: 10 y: 30<br />font: Font{<br />size: 24<br /> }<br /> }<br /> }<br />}<br />Hello World com JavaFX<br />
  42. 42. Stage{<br />title: &quot;Declarar ehfacil!&quot;<br />width: 250<br />height: 250<br />}<br />Hello World com JavaFX<br />
  43. 43. Stage{<br />title: &quot;Declarar ehfacil!&quot;<br />scene: Scene{<br />width: 250<br />height: 250<br />}<br />}<br />Hello World com JavaFX<br />
  44. 44. Objetos em Content<br />
  45. 45. Posição dos Objetos na cena<br />
  46. 46. Posição dos Objetos em cena<br />
  47. 47. Posição dos Objetos em cena<br />
  48. 48. Transformações<br />
  49. 49. Efeitos<br />
  50. 50. Efeitos e Transformações<br />
  51. 51. Eventos<br />
  52. 52. Agrupamentos<br />
  53. 53. ImageView{<br />image: Image{<br /> url: &quot;{__DIR__}imagem.png&quot;<br /> }<br />rotate: 15<br />scaleX: 2<br />}<br />Imagens<br />
  54. 54. Vídeo<br />

×