Introdução ao JavaFX Label
O JavaFX Label faz parte do pacote JavaFX.scene.control e da classe JavaFX label. É usado principalmente para representar o controle de rótulo e também não é editável. Mesmo que ajude a exibir a imagem gráfica ou um pequeno texto na tela, ele não pode ser focado. Também é útil para apresentar o texto necessário para caber em um espaço exato. Abaixo está a sintaxe para criar um rótulo.
Sintaxe:
A sintaxe para inicializar o rótulo JavaFX é:
Label lbl = new Label();
Aqui, o construtor pode ser parametrizado e não parametrizado, o que depende do requisito. Será discutido na seção abaixo.
Sintaxe usada no rótulo JavaFX
A seguir, são apresentadas algumas das sintaxes comumente usadas que ajudam a alterar a fonte, a cor, o agrupamento de texto etc.
1. Para alterar a fonte
//set font as Times New Roman
l2.setFont(Font.font("Times New Roman", 34));
Aqui, l2 é o rótulo.
2. Para mudar a cor
//set color for the font as Red
l2.setTextFill(Color.web("Red"));
Aqui, l2 é o rótulo.
3. Finalização do texto
l3.setMaxWidth(100);
l3.setWrapText(true);
Aqui, l3 é o rótulo.
Construtor de JavaFX Label
O JavaFX Label possui 3 construtores:
1. Etiqueta ()
Esse construtor ajuda na criação de um rótulo vazio.
Código: Label lbl = new Label();
2. Etiqueta (String txt)
Um rótulo com o texto especificado será criado.
Código: Label lbl = new Label(“Name of the user”);
3. Etiqueta (String txt, Nó ng)
Esse construtor ajuda na criação de um rótulo com o texto e o gráfico especificados.
Código: Label lbl = new Label(“Name of the user”, new Imageview(graph));
Métodos no JavaFX Label
Existem certos métodos geralmente usados no JavaFX. Eles são:
- createDefaultSkin (): para o controle especificado, uma nova instância será criada para a capa padrão.
- O valor da propriedade getLabelFor (): labelFor será retornado.
- labelForProperty (): para outro nó ou controle, um rótulo pode se comportar como um rótulo.
- setLabelFor (Nó n): o valor da propriedade labelFor será definido.
Exemplo a ser implementado no JavaFX Label
Agora, vamos ver alguns dos exemplos de programação para rótulos JavaFX.
Exemplo 1
Programa para criar um rótulo
Código:
// Java program that demonstrates creation of label
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.*;
import javafx.scene.control.Label;
import javafx.stage.Stage;
//Example class that extends Application class
public class JavaFXLabelExamples extends Application(
// launch the application
public void start(Stage s)
(
// set stage title
s.setTitle("label is created");
// label creation
Label lb = new Label("This is the sample label !!!!");
// Stack pane creation
StackPane sp = new StackPane();
sp.getChildren().add(lb);
// scene creation
Scene scn = new Scene(sp, 200, 200);
// set scene
s.setScene(scn);
s.show();
)
public static void main(String args())
(
// launch the application
launch(args);
)
)
Resultado:
A explicação para o programa acima:
- Um estágio é criado e um título é definido.
- O rótulo é criado com a ajuda de um construtor padrão.
- O painel Pilha também é criado.
- O método Show () ajuda na exibição dos resultados.
Exemplo 2
Programa para criar um rótulo e definir uma cor.
Código:
// Java program that demonstrates creation of label
//Java program to set a color for the created label
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.HBox;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
//Example class that extends Application class
public class JavaFXLabelExamples extends Application(
public static void main(String() args) (
// launch the application
launch(args);
)
//application starts here
public void start(Stage stage) (
//a new scene is created
Scene scn = new Scene(new Group());
//set the title, width and height of stage
stage.setTitle("Example of Label");
stage.setWidth(300);
stage.setHeight(200);
//horizontal direction box
HBox hb = new HBox();
//create label with parameterised constructor
Label lbl = new Label("This is the sample label");
//set the color for the text
lbl.setTextFill(Color.web("Red"));
hb.setSpacing(10);
hb.getChildren().add((lbl));
((Group) scn.getRoot()).getChildren().add(hb);
//set scene
stage.setScene(scn);
//display result
stage.show();
)
)
Resultado:
A explicação para o programa acima:
- Um estágio é criado e um título é definido
- O rótulo é criado com a ajuda de um construtor parametrizado. Ou seja, o rótulo com o nome especificado será criado.
- O texto com a cor especificada é criado.
- O método Show () ajuda na exibição dos resultados
Exemplo 3
Programa para definir cores, fontes, moldar e adicionar efeitos.
Código:
import java.io.*;
import javafx.application.Application;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.input.MouseEvent;
import javafx.scene.layout.FlowPane;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.stage.Stage;
public class JavaFXLabelExamples extends Application (
@Override
public void start(Stage primaryStage) throws Exception (
// Image Source
//Make sure you have a source image in the specified path
FileInputStream input = new FileInputStream("D:\\EduCBA\\nov\\download.png.webp");
//image creation
Image i = new Image(input);
//image view creation
ImageView iv = new ImageView(i);
//label 1
Label l1 = new Label("Sample Label for Text & image");
// Set image
l1.setGraphic(iv);
// Label 2
Label l2 = new Label("sample Label for Font & Color");
//set font as Times New Roman
l2.setFont(Font.font("Times New Roman", 34));
//set color for the font
l2.setTextFill(Color.web("Red"));
// Label 3
Label l3 = new Label("Sample label for wrapping of the text");
l3.setMaxWidth(100);
l3.setWrapText(true);
// Label 4
Label l4 = new Label("Label with 45 degree rotation");
// Rotate in a degree of 45
l4.setRotate(45);
l4.setTranslateY(30);
FlowPane root = new FlowPane();
//set the padding
root.setPadding(new Insets(10));
//set horizontal gap
root.setHgap(10);
//set vertical gap
root.setVgap(10);
//add it to the stage
root.getChildren().addAll(l1, l2, l3, l4);
//scene creation
Scene scene = new Scene(root, 400, 250);
//set title
primaryStage.setTitle("Sample Labels for demo purpose");
//set the scene
primaryStage.setScene(scene);
//display the results
primaryStage.show();
)
public static void main(String() args) (
//launch the application
launch(args);
)
)
Resultado:
A explicação para o programa acima:
- Uma imagem é tirada da fonte especificada. Se uma imagem não estiver presente na fonte, poderá ocorrer um erro.
- Quatro etiquetas estão presentes.
- O primeiro rótulo cria um texto e uma imagem.
- O segundo rótulo cria um texto com fonte e cor especificadas
- O terceiro rótulo cria um texto que envolve
- O quarto rótulo cria um texto com uma rotação de 45 graus.
- Todos esses rótulos são criados com a ajuda de construtores parametrizados. Ou seja, o rótulo com o nome especificado será criado.
- O método Show () ajuda na exibição dos resultados
Conclusão
O JavaFX Labels ajuda na exibição de imagens gráficas, textos na tela. Esses textos podem ser alterados com base nos requisitos do usuário. Este documento aborda a sintaxe, programas de amostra, construtores parametrizados e não parametrizados de rótulos JavaFX em detalhes.
Artigos recomendados
Este é um guia para o JavaFX Label. Aqui discutimos o método, exemplos e funções no JavaFX Label com códigos e saída adequados. Você também pode consultar nossos outros artigos relacionados para saber mais -
- Máquina Virtual JAVA
- Efeitos jQuery
- JCheckBox em Java
- JList em Java
- Layouts JavaFX
- Tipos e como criar gráficos JavaFx?
- Slider JavaFX
- Como inserir texto no JavaFX TextField?
- Construtores e métodos do botão JavaFx
- Programa para implementar o JavaFX FileChooser
- 3 Métodos de jQuery Slide com Programação
- Os 15 principais métodos de HBox no JavaFX
- Como criar a caixa de seleção no JavaFX com exemplos?
- StackPane do JavaFX | Métodos diferentes com o programa