codestory

Die Anleitung zu JavaFX Hyperlink

  1. JavaFX Hyperlink
  2. Das Beispiel über Hyperlink
  3. Anpassende Hyperlink

1. JavaFX Hyperlink

JavaFX Hyperlink stellt ein Hyperlink dar. Er is ähnlich wie ein Hyperlink in HTML
Hyperlink hyperlink = new Hyperlink("Go to Eclipse home page");

hyperlink.setOnAction(new EventHandler<ActionEvent>() {

    @Override
    public void handle(ActionEvent event) {
        getHostServices().showDocument("https://eclipse.org");
    }
});
Standardmäßig haben JavaFX Hyperlink 3 Bestände wie folgenden Beispiel. Notiz : Sie können die CSS für die Änderung benutzen

2. Das Beispiel über Hyperlink

Beispiel: Erstellung einer Hyperlink und bei der Klick wird die Homepage der Eclipse (https://eclipse.org) verschoben.
HyperlinkDemo.java
package org.o7planning.javafx.hyperlink;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Hyperlink;
import javafx.scene.layout.FlowPane;
import javafx.stage.Stage;

public class HyperlinkDemo extends Application {

    @Override
    public void start(Stage stage) {

        Hyperlink hyperlink = new Hyperlink("Go to Eclipse home page");

        hyperlink.setOnAction(new EventHandler<ActionEvent>() {

            @Override
            public void handle(ActionEvent event) {
                getHostServices().showDocument("https://eclipse.org");
            }
        });

        FlowPane root = new FlowPane();
        root.setPadding(new Insets(10));
        root.getChildren().addAll(hyperlink);
        Scene scene = new Scene(root);

        stage.setTitle("JavaFX Hiperlink (o7planning.org)");

        stage.setWidth(400);
        stage.setHeight(200);

        stage.setScene(scene);
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }

}

3. Anpassende Hyperlink

Mit Hyperlink haben Sie einige nutzliche Methode:
public final void setUnderline(boolean value)

public final boolean isUnderline()

public final void setVisited(boolean value)

public final boolean isVisited()
Beispiel
HyperlinkDemo2.java
package org.o7planning.javafx.hyperlink;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Hyperlink;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;

public class HyperlinkDemo2 extends Application {

    private final String TEXT = "Go to Eclipse home page";
   
    @Override
    public void start(Stage stage) {

        Hyperlink hyperlink = new Hyperlink(TEXT);

        hyperlink.setOnAction(new EventHandler<ActionEvent>() {

            @Override
            public void handle(ActionEvent event) {
                getHostServices().showDocument("https://eclipse.org");
            }
        });

        Button button1 = new Button("On/Off Visited");

        button1.setOnAction(new EventHandler<ActionEvent>() {

            @Override
            public void handle(ActionEvent event) {
                boolean visited = hyperlink.isVisited();
                hyperlink.setVisited(!visited);
                hyperlink.setText(TEXT+" (visited:"+ hyperlink.isVisible()+")");
            }
        });
       
        Button button2 = new Button("On/Off Underline");

        button2.setOnAction(new EventHandler<ActionEvent>() {

            @Override
            public void handle(ActionEvent event) {
                boolean underline = hyperlink.isUnderline();
                hyperlink.setUnderline(!underline);
                hyperlink.setText(TEXT+" (underline:"+ hyperlink.isUnderline()+")");
            }
        });
         

        VBox root = new VBox();
        root.setPadding(new Insets(10));
        root.setSpacing(10);
        root.getChildren().addAll(hyperlink,button1,button2);
        Scene scene = new Scene(root);

        stage.setTitle("JavaFX Hiperlink (o7planning.org)");

        stage.setWidth(400);
        stage.setHeight(200);

        stage.setScene(scene);
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }

}

Die Anleitungen JavaFX

Show More