JDK do Java 1.8.x
Eclipse Oxygen
Vamos ao primeiros passos no Eclipse (No netbeans é equivalente).
Primeiro crie um novo projeto Java com ctrl + n ou como na imagem a seguir.
Certifique que está selecionando um projeto Java.
Em seguida, vamos nomear o nosso projeto e escolher a JRE instalada.
Após isso, crie uma nova classe a qual onde desenvolveremos o nosso código.
Nomeie a classe conforme ilustra a imagem, e marque a checkbox public static void main() (método principal de nossa aplicação).
Essa será a cara de nossa classe.
Para que ela seja uma classe de aplicação JavaFX, temos que adicionar extends Application , logo após o nome da classe e fazer a importação desta classe Application.
Note que aparecerá um erro. Quando uma classe extende de Application, a mesma necessita herdar método abstrado da Application, O eclipse lhe auxiliará em consertar este erro, Clique em add unimplemented method.
Em seguida vamos ter o método start(Stage primaryStage), esté método preparará o palco para as nossas futuras cenas, este palco é a "borda" de todos os programas que temos em nosso computador, inclusive deste navegador, e cada Sistema operacional tem suas categorias peculiares.
Agora sim vamos criar nosso código, mas antes, explicarei em tópico oque cada um é:
- AnchorPane : É um Node, onde ficarão contidos (De forma "ancorada") todos os demais Nodes. Seu método .prefSize(), recebem dois parâmetros (X e Y) para definir sua área .
- TextField : Um Node o qual recebe textos e também há a possibilidade de setar textos no mesmo com o .getText e .setText.
- Lable : Node o qual serve de texto fixo.
- Button: Como o próprio nome já diz, é um Node do tipo Botão o qual executa ações. Seu método setOnAction comprova isso, criamos um Handle, onde será disparado quando o mesmo for clicado e fará uma ação.
- VBox : É um Node do tipo container, onde ele alinha dodos seus Nodes internos na Vertical, daí seu nome.
- Scene : Como introduzido, o JavaFX é semelhante a uma peça de teatro, onde temos o palco (Stage), os atos(Action), os atores (TextField, Buttons, Labels ... ) e também, temos a Cena (Scene), é o local onde ocorrerá oque o usuário deseja.
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.AnchorPane;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class AppBlogFX extends Application {
public static void main(String[] args) {
launch();
}
@Override
public void start(Stage primaryStage) throws Exception {
AnchorPane root = new AnchorPane();
root.setPrefSize(400, 400);
TextField tfMensagem = new TextField();
tfMensagem.setPromptText("Digite sua mensagem aqui!");
Label lblMensagem = new Label();
Button btnAction = new Button("Aperte");
btnAction.setOnAction(new EventHandler() {
@Override
public void handle(ActionEvent event) {
if(tfMensagem.getText().isEmpty()) {
lblMensagem.setText("Digite uma mensagem!");
} else {
lblMensagem.setText(tfMensagem.getText());
}
}
});
VBox vb = new VBox(tfMensagem, btnAction, lblMensagem);
vb.setLayoutX(100);
vb.setLayoutY(200);
root.getChildren().add(vb);
Scene cena = new Scene(root);
primaryStage.setScene(cena);
primaryStage.show();
}
}