Руководство JavaFX Hyperlink
1. JavaFX Hyperlink
JavaFX Hyperlink описывает гиперссылку, соответствующую с анкор ссылкой в 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");
}
});
По умолчанию JavaFX Hyperlink имеет 3 состояния изображенных ниже. Заметьте, что вы можете использовать CSS, чтобы изменить их.
2. Пример с Hyperlink
Пример ниже создает Hyperlink, когда вы кликаете на него,он переходит к главной странице Eclipse (https://eclipse.org).
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. Кастомизировать Hyperlink
С Hyperlink у вас есть некоторые полезные методы:
public final void setUnderline(boolean value)
public final boolean isUnderline()
public final void setVisited(boolean value)
public final boolean isVisited()
Пример:
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);
}
}
Руководства JavaFX
- Откройте новое окно (window) в JavaFX
- Руководство JavaFX ChoiceDialog
- Руководство JavaFX Alert Dialog
- Руководство JavaFX TextInputDialog
- Установите e(fx)clipse для Eclipse (JavaFX Tooling)
- Установите JavaFX Scene Builder для Eclipse
- Руководство JavaFX для начинающих - Hello JavaFX
- Руководство JavaFX FlowPane Layout
- Руководство JavaFX TilePane Layout
- Руководство JavaFX HBox, VBox Layout
- Руководство JavaFX BorderPane Layout
- Руководство JavaFX AnchorPane Layout
- Руководство JavaFX TitledPane
- Руководство JavaFX Accordion
- Руководство JavaFX ListView
- Руководство JavaFX Group
- Руководство JavaFX ComboBox
- Руководство JavaFX Transformations
- Эффекты (effects) в JavaFX
- Руководство JavaFX GridPane Layout
- Руководство JavaFX StackPane Layout
- Руководство JavaFX ScrollPane
- Руководство JavaFX WebView и WebEngine
- Руководство JavaFX HTMLEditor
- Руководство JavaFX TableView
- Руководство JavaFX TreeView
- Руководство JavaFX TreeTableView
- Руководство JavaFX Menu
- Руководство JavaFX ContextMenu
- Руководство JavaFX Image и ImageView
- Руководство JavaFX Label
- Руководство JavaFX Hyperlink
- Руководство JavaFX Button
- Руководство JavaFX ToggleButton
- Руководство JavaFX RadioButton
- Руководство JavaFX MenuButton и SplitMenuButton
- Руководство JavaFX TextField
- Руководство JavaFX PasswordField
- Руководство JavaFX TextArea
- Руководство JavaFX Slider
- Руководство JavaFX Spinner
- Руководство JavaFX ProgressBar и ProgressIndicator
- Руководство JavaFX ChoiceBox
- Руководство JavaFX Tooltip
- Руководство JavaFX DatePicker
- Руководство JavaFX ColorPicker
- Руководство JavaFX FileChooser и DirectoryChooser
- Руководство JavaFX PieChart
- Руководство JavaFX AreaChart и StackedAreaChart
- Руководство JavaFX BarChart и StackedBarChart
- Руководство JavaFX Line
- Руководство JavaFX Rectangle и Ellipse
Show More