Vamos criar uma classe chamada MyShapes que irá mostrar uma elipse e um texto dentro dela, e esta elipse estará no centro de uma janela. A aparência da janela varia conforme a plataforma.
Quando você mexer no tamanho da janela, note que a elipse sempre ficará no centro da janela. A classe MyShapes é a classe principal e irá estender para a classe Application.
O JavaFX runtime system instância MyShapes que é o Stage primário, o qual passa o método start() que é sobrescrito. O runtime system invoca o método start() para você.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
package sample; import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.layout.StackPane; import javafx.scene.paint.Color; import javafx.scene.shape.Ellipse; import javafx.scene.text.Font; import javafx.scene.text.Text; import javafx.stage.Stage; public class MyShapes extends Application { @Override public void start(Stage stage) throws Exception { Ellipse ellipse = new Ellipse(110, 70); ellipse.setFill(Color.LIGHTBLUE); Text text = new Text("Minhas Formas"); text.setFont(new Font("Arial Bold", 24)); StackPane stackPane = new StackPane(); stackPane.getChildren().addAll(ellipse, text); Scene scene = new Scene(stackPane, 350, 230, Color.LIGHTYELLOW); stage.setTitle("Minhas Formas com JavaFX"); stage.setScene(scene); stage.show(); } public static void main(String[] args){ launch(args); } } |
Veja que há pacotes referenciados, isto quer dizer que devem ser importados: javafx.application, javafx.scene e javafx.stage. Preste atenção nas importações porque há nomes de classes que são iguais para outros pacotes, o pacote que estamos importando são do pacote javafx.
Esse programa cria vários nodes e adiciona eles ao layout container StackPane. O programa também cria o scene, configura o stage e mostra o stage.
Primeiro, nós criamos uma elipse com a classe Ellipse, providenciamos a ela uma largura e altura em pixels. A classe Ellipse estende a classe Shape, com isso podemos configurar qualquer propriedade do Shape. Isso inclui o preenchimento que é a cor interna da elipse.
Deixe um comentário