Tutorial JavaFX simples

54
JavaFX Clodoaldo Brasilino Leite Neto [email protected]

description

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

Transcript of Tutorial JavaFX simples

Page 1: Tutorial JavaFX simples

JavaFXClodoaldo Brasilino Leite Neto

[email protected]

Page 2: Tutorial JavaFX simples

O que é JavaFX?

Page 3: Tutorial JavaFX simples

O que é JavaFX?

Page 4: Tutorial JavaFX simples

A Plataforma JavaFX

Page 5: Tutorial JavaFX simples

A Plataforma JavaFX

Uma família de tecnologias◦JavaFX Runtime◦JavaFX Script◦JavaFX Tools

Para quem?◦Designers◦Desenvolvedores

Page 6: Tutorial JavaFX simples

JavaFX, Flex ou Silverlight?

Page 7: Tutorial JavaFX simples

Java, Flash ou .Net?

Page 8: Tutorial JavaFX simples

Sun, Adobe ou Microsoft?

Page 9: Tutorial JavaFX simples

Temos Flex e Silverlight... Por que JavaFX?

Page 10: Tutorial JavaFX simples

Por que JavaFX?

Uma única plataforma RIA para todas as telas

Mercado de amplo alcanceFluxo de trabalho designer-desenvolvedorRuntime poderosoLiberdade do browserCompatibilidade com tecnologias Java

Page 11: Tutorial JavaFX simples

Exemplos de Aplicação JavaFX

Page 12: Tutorial JavaFX simples

Exemplos de Aplicação JavaFX

Page 13: Tutorial JavaFX simples

Por onde começar?

Page 14: Tutorial JavaFX simples

Sites básicos

JavaFX◦http://javafx.com/

JavaFX DeveloperHome◦http://java.sun.com/javafx/

JavaFX Programing(withPassion!)◦http://www.javapassion.com/javafx/

Raphael Marques – Meu tutor! ◦http://raphaelmarques.wordpress.com/

Page 15: Tutorial JavaFX simples

Ferramentas Atuais

Windows, Linux, Mac OS X e Solarisx86

JavaFX 1.2 SDK

NetbeansIDE 6.5.1 para JavaFX 1.2

JavaFX 1.2 ProductionSuite◦Plugin para Adobe Illustrator e Adobe Photoshop◦Media Factory

JavaFX Graphics Viewer e SVG Converter

Page 16: Tutorial JavaFX simples

JavaFX Script

Page 17: Tutorial JavaFX simples

Tipos “Primitivos”

Tipos de dados básicos (não nulos)◦Integer◦Number◦Boolean◦Duration

StringSequenceFunction

Page 18: Tutorial JavaFX simples

Declaração de Variáveis

var string1= “JavaFX"; var string2: String = “JavaFX";var integer1= 3;var integer2: Integer= 3;var number1= 3.0;var number2: Number= 3;var number3= 3 as Number;var number4= integer1+ number1;

Page 19: Tutorial JavaFX simples

Tolo! Você não declarou o tipo de suas variáveis! Irá arder no fogo do inferno e seu código não compilará!

Page 20: Tutorial JavaFX simples

Não precisa, rapaz! JavaFX possui INFERÊNCIA DE TIPOS!

Page 21: Tutorial JavaFX simples

println(“JavaFX rules”);//JavaFX rulesprintln(‘JavaFX rules’);//JavaFX rulesprintln(“JavaFX ‘rules’ ”);//JavaFX ‘rules’println(‘JavaFX “rules” ’);//JavaFX “rules”

Strings

Page 22: Tutorial JavaFX simples

Strings

var string1= “JavaFX";var string2: String = “rules";

println(“{string1} {string2}”);//JavaFX rules

“Valor de x: {x}”“Valor de x: {objeto.getX()}”

Page 23: Tutorial JavaFX simples

Operadores

Integer e Number:◦+◦-◦*◦/◦mod

Boolean◦and◦or◦not

Page 24: Tutorial JavaFX simples

var t1: Duration= 1ms;var t2= 1s;var t3= 1m;var t4= 1h;println("{t1} {t2} {t3} {t4}");

//1ms 500ms 60000ms 3600000ms

println(1s+ 500ms);//1500.0msprintln(1s/ 500ms);//2.0println(1s*2);//2000.0msprintln(1s/2);//500.0ms

Page 25: Tutorial JavaFX simples

Functions

Page 26: Tutorial JavaFX simples

def PI= 3.1416;

function calcArea(raio: Number): Number{return PI* raio * raio;

}

var raio= 5;

var area= calcArea(raio);

Page 27: Tutorial JavaFX simples

def PI= 3.1416;

function calcArea(raio: Number) {return PI* raio * raio;

}

var raio= 5;

var area= calcArea(raio);

Page 28: Tutorial JavaFX simples

def PI= 3.1416;

function calcArea(raio: Number) {PI* raio * raio;

}

var raio= 5;

var area= calcArea(raio);

Page 29: Tutorial JavaFX simples

def PI= 3.1416;

var calcArea = function(raio: Number) {PI* raio * raio;

}

var calcPerimetro = function(raio: Number) {PI* raio * 2;

}

var calc= calcArea;println(calc(5));

calc= calcPerimetro;println(calc(5));

Page 30: Tutorial JavaFX simples

def PI= 3.1416;

var calcArea = function(raio: Number) {PI* raio * raio;

}

var calcPerimetro = function(raio: Number) {PI* raio * 2;

}

var calc: function (Number):Number = calcArea;println(calc(5));

calc= calcPerimetro;println(calc(5));

Page 31: Tutorial JavaFX simples

class A{var x= 0;function getx(){

x;}

}var a= A{x:1};var b= A{x:2};

var f= a.getx;var g= b.getx;

println(f());//1println(g());//2

Page 32: Tutorial JavaFX simples

Binding

Page 33: Tutorial JavaFX simples

Binding

var x = 1;var y = bind x;var z = bind y * 2;

println("{x} {y} {z}");//1 1 2

x = 2;

println("{x} {y} {z}");//2 2 4

Page 34: Tutorial JavaFX simples

Binding

var a = 1;var b = bind a with inverse;

println("{a} {b}");//1 1

a = 2;

println("{a} {b}");//2 2

b = 3;

println("{a} {b}");//3 3

Page 35: Tutorial JavaFX simples

var x = 10;var y = 20;var rect1 = Rectangle{

x: bind x;y: bind y;

}; var rect2 = bind Rectangle{

x: x;y: y;

};

Binding

Page 36: Tutorial JavaFX simples

def PI = 3.1416;var raio = 5;bound function calcArea(){

PI * raio * raio;}var area = bind calcArea();println(area);// 78.53999raio = 10;println(area);// 314.15997

Binding

Page 37: Tutorial JavaFX simples

var a = 1 on replace old{println("changing");println("old: {old}");println("new: {a}");

};a = 3;

Trigger

Page 38: Tutorial JavaFX simples

var a = 1 on replace old{println("changing");println("old: {old}");println("new: {a}");

};a = 3;

//changing//old: 0//new: 1//changing//old: 1//new: 3

Trigger

Page 39: Tutorial JavaFX simples

GUI com JavaFX

Page 40: Tutorial JavaFX simples

public class HelloWorldSwing{public static void main(String[] args){ JFrameframe = new JFrame("HelloWorldSwing"); Jlabellabel= new JLabel("HelloWorld"); frame.getContentPane().add(label); frame.setDefaultCloseOperation(

JFrame.EXIT_ON_CLOSE); frame.pack(); frame.setVisible(true);}

}

Hello World com Swing

Page 41: Tutorial JavaFX simples

Stage{ title: "HelloWorld em JavaFX" width: 250 height: 80 scene: Scene{ content: Text{ content: "HelloWorld!" x: 10 y: 30 font: Font{ size: 24 } } }}

Hello World com JavaFX

Page 42: Tutorial JavaFX simples

Stage{title: "Declarar eh facil!"width: 250height: 250

}

Hello World com JavaFX

Page 43: Tutorial JavaFX simples

Stage{title: "Declarar eh facil!"scene: Scene{

width: 250height: 250

}}

Hello World com JavaFX

Page 44: Tutorial JavaFX simples

Objetos em Content

Page 45: Tutorial JavaFX simples

Posição dos Objetos na cena

Page 46: Tutorial JavaFX simples

Posição dos Objetos em cena

Page 47: Tutorial JavaFX simples

Posição dos Objetos em cena

Page 48: Tutorial JavaFX simples

Transformações

Page 49: Tutorial JavaFX simples

Efeitos

Page 50: Tutorial JavaFX simples

Efeitos e Transformações

Page 51: Tutorial JavaFX simples

Eventos

Page 52: Tutorial JavaFX simples

Agrupamentos

Page 53: Tutorial JavaFX simples

ImageView{image: Image{

url: "{__DIR__}imagem.png"}rotate: 15scaleX: 2

}

Imagens

Page 54: Tutorial JavaFX simples

Vídeo