JavaFX | Clase de flujo de texto

La clase TextFlow es una parte de JavaFX. La clase TextFlow está diseñada para diseñar texto enriquecido. Se puede utilizar para diseñar varios Nodes de texto en un solo flujo de texto. La clase TextFlow extiende la clase Pane .

Constructores de la clase:

  1. TextFlow() : crea un nuevo objeto de flujo de texto.
  2. TextFlow(Node… c) : Crea un nuevo objeto de flujo de texto con Nodes especificados.

Métodos comúnmente utilizados:

Método Explicación
getLineSpacing() Devuelve el interlineado del flujo de texto
getTextAlignment() Devuelve la alineación del texto del flujo de texto.
setLineSpacing(doble s) Establezca el espacio entre líneas del flujo de texto.
setTextAlignment(TextAlignment v) Establece la alineación del texto del flujo de texto.

Los siguientes programas ilustran el uso de la clase TextFlow:

  1. Programa Java para crear un TextFlow y agregarle un objeto de texto: En este programa crearemos un TextFlow llamado text_flow y dos Text llamados text_1 y text_2 . Establece el relleno y la fuente usando setFill() y setFont() . Agregaremos el texto a text_flow usando la función getChildren().add() . Agregue text_flow a la escena y escena al escenario. Llame a la función show() para mostrar los resultados finales.

    // Java program to create a TextFlow and 
    // add text object to it .
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.control.*;
    import javafx.scene.layout.*;
    import javafx.stage.Stage;
    import javafx.event.ActionEvent;
    import javafx.scene.paint.*;
    import javafx.scene.text.*;
    import javafx.scene.web.*;
    import javafx.scene.layout.*;
    import javafx.scene.shape.*;
      
    public class TextFlow_0 extends Application {
      
        // launch the application
        public void start(Stage stage)
        {
      
            try {
      
                // set title for the stage
                stage.setTitle("TextFlow");
      
                // create TextFlow
                TextFlow text_flow = new TextFlow();
      
                // create text
                Text text_1 = new Text("GeeksforGeeks\n");
      
                // set the text color
                text_1.setFill(Color.RED);
      
                // set font of the text
                text_1.setFont(Font.font("Verdana", 25));
      
                // create text
                Text text_2 = new Text("The computer science portal for geeks");
      
                // set the text color
                text_2.setFill(Color.BLUE);
      
                // set font of the text
                text_2.setFont(Font.font("Helvetica", FontPosture.ITALIC, 15));
      
                // add text to textflow
                text_flow.getChildren().add(text_1);
                text_flow.getChildren().add(text_2);
      
                // create a scene
                Scene scene = new Scene(text_flow, 400, 300);
      
                // set the scene
                stage.setScene(scene);
      
                stage.show();
            }
      
            catch (Exception e) {
      
                System.out.println(e.getMessage());
            }
        }
      
        // Main Method
        public static void main(String args[])
        {
      
            // launch the application
            launch(args);
        }
    }

    Producción:

  2. Programa Java para crear un TextFlow y agregarle un objeto de texto, establecer la alineación del texto y establecer el espacio entre líneas del flujo de texto: En este programa crearemos un TextFlow llamado text_flow y dos Text llamados text_1 y text_2 . Establece el relleno y la fuente usando setFill() y setFont() . Configure TextAlignment usando setTextAlignment() y configure el espacio entre líneas usando la función setLineSpacing() . Agregue el texto a text_flow usando la función getChildren().add() . Agregue text_flow al Vbox. Agregue la escena vbox y la escena al escenario. Llamar al programa()función para mostrar los resultados finales.

    // Java program to create a TextFlow and 
    // add text object to it, set text Alignment
    // and set line spacing of the text flow.
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.control.*;
    import javafx.scene.layout.*;
    import javafx.stage.Stage;
    import javafx.scene.layout.*;
    import javafx.scene.paint.*;
    import javafx.scene.text.*;
    import javafx.geometry.*;
    import javafx.scene.layout.*;
    import javafx.scene.shape.*;
      
    public class TextFlow_1 extends Application {
      
        // launch the application
        public void start(Stage stage)
        {
      
            try {
      
                // set title for the stage
                stage.setTitle("FlowPane");
      
                // create TextFlow
                TextFlow text_flow = new TextFlow();
      
                // create text
                Text text_1 = new Text("GeeksforGeeks\n");
      
                // set the text color
                text_1.setFill(Color.GREEN);
      
                // set font of the text
                text_1.setFont(Font.font("Verdana", 25));
      
                // create text
                Text text_2 = new Text("The computer science portal for geeks");
      
                // set the text color
                text_2.setFill(Color.BLUE);
      
                // set font of the text
                text_2.setFont(Font.font("Helvetica", FontPosture.ITALIC, 15));
      
                // add text to textflow
                text_flow.getChildren().add(text_1);
                text_flow.getChildren().add(text_2);
      
                // set text Alignment
                text_flow.setTextAlignment(TextAlignment.CENTER);
      
                // set line spacing
                text_flow.setLineSpacing(20.0f);
      
                // create VBox
                VBox vbox = new VBox(text_flow);
      
                // set alignment of vbox
                vbox.setAlignment(Pos.CENTER);
      
                // create a scene
                Scene scene = new Scene(vbox, 400, 300);
      
                // set the scene
                stage.setScene(scene);
      
                stage.show();
            }
      
            catch (Exception e) {
      
                System.out.println(e.getMessage());
            }
        }
      
        // Main Method
        public static void main(String args[])
        {
      
            // launch the application
            launch(args);
        }
    }

    Producción:

Nota: Es posible que los programas anteriores no se ejecuten en un IDE en línea; use un compilador fuera de línea.

Referencia: https://docs.oracle.com/javase/8/javafx/api/javafx/scene/text/TextFlow.html

Publicación traducida automáticamente

Artículo escrito por andrew1234 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *