超鏈接類是JavaFX的一部分。超鏈接是一個HTML類型的標簽,可以包含文本和圖形,或兩者都包含。它響應滾動和點擊。單擊/按下超鏈接時,isVisited()變為true。超鏈接的行為類似於按鈕。當按下並釋放超鏈接時,將發送一個ActionEvent。因此,您的應用程序可以基於此事件執行某些操作。
該類的構造函數:
- Hyperlink():創建沒有文本或圖形的超鏈接。
- Hyperlink(String t):創建帶有指定文本作為標簽的超鏈接。
- Hyperlink(String t, Node g):創建帶有指定文本和圖形作為標簽的超鏈接。
常用方法:
方法 | 說明 |
---|---|
isVisited() | 如果尚未訪問超鏈接,則返回true,否則返回false。 |
setVisited(boolean v) | 設置訪問的屬性的值。 |
setOnAction(EventHandler v) | 設置屬性onAction的值。 |
fire() | 實現以調用ActionEvent(如果已定義)。 |
以下示例程序旨在說明Hyperlink類的用法:
- Java程序創建超鏈接並將其添加到階段中,還添加一個事件處理程序來處理事件:該程序創建一個由名稱超鏈接指示的超鏈接。超鏈接將在場景內創建,而場景又將在場景內托管。我們將創建一個標簽來顯示是否訪問了超鏈接。函數setTitle()用於為舞台提供標題。然後創建一個HBox,在其上調用addChildren()方法在場景內附加超鏈接和標簽。最後,調用show()方法以顯示最終結果。我們將創建一個事件處理程序來處理按鈕事件。事件處理程序將使用setOnAction()函數添加到超鏈接。
// Java Program to create a hyperlink and add // it to the stage also add an event handler // to handle the events 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.event.EventHandler; public class hyperlink extends Application { // launch the application public void start(Stage stage) { // set title for the stage stage.setTitle("creating hyperlinks"); // create a hyperlink Hyperlink hyperlink = new Hyperlink("hyperlink"); // create a HBox HBox hbox = new HBox(); // create a label Label label = new Label("hyperlink not visited"); // action event EventHandler<ActionEvent> event = new EventHandler<ActionEvent>() { public void handle(ActionEvent e) { label.setText("hyperlink visited "); } }; // when hyperlink is pressed hyperlink.setOnAction(event); // add hyperlink hbox.getChildren().add(hyperlink); hbox.getChildren().add(label); // create a scene Scene scene = new Scene(hbox, 200, 200); // set the scene stage.setScene(scene); stage.show(); } // Main Method public static void main(String args[]) { // launch the application launch(args); } }
輸出:
- Java程序創建帶有文本和圖像的超鏈接,並向其中添加事件處理程序:該程序將創建一個超鏈接,該超鏈接由名稱超鏈接指示,並帶有圖像和文本。將使用導入圖像的文件輸入流將圖像包括在內。然後,我們將使用文件輸入流的對象創建圖像,然後使用圖像文件創建圖像視圖。超鏈接將在場景內創建,而場景又將在場景內托管。我們將創建一個標簽來顯示是否訪問了超鏈接。函數setTitle()用於為舞台提供標題。然後創建一個HBox,在其上調用addChildren()方法在場景內附加超鏈接和標簽。最後,調用show()方法以顯示最終結果。我們將創建一個事件處理程序來處理按鈕事件。事件處理程序將使用setOnAction()函數添加到超鏈接。
// Java Program to create a hyperlink with // both text and image on it and also add // an event handler 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.event.EventHandler; import java.io.*; import javafx.scene.image.*; public class hyperlink_1 extends Application { // launch the application public void start(Stage stage) { try { // set title for the stage stage.setTitle("creating hyperlinks"); // create a input stream FileInputStream input = new FileInputStream("f:\\gfg.png"); // create a image Image image = new Image(input); // create a image View ImageView imageview = new ImageView(image); // create a hyperlink Hyperlink hyperlink = new Hyperlink("GeeksforGeeks", imageview); // create a HBox HBox hbox = new HBox(); // create a label Label label = new Label("hyperlink not visited"); // action event EventHandler<ActionEvent> event = new EventHandler<ActionEvent>() { public void handle(ActionEvent e) { label.setText("hyperlink visited "); } }; // when hyperlink is pressed hyperlink.setOnAction(event); // add hyperlink hbox.getChildren().add(hyperlink); hbox.getChildren().add(label); // create a scene Scene scene = new Scene(hbox, 200, 200); // set the scene stage.setScene(scene); stage.show(); } catch (Exception e) { System.err.println(e.getMessage()); } } // Main Method public static void main(String args[]) { // launch the application launch(args); } }
輸出:
注意:以上程序可能無法在在線IDE中運行。請使用離線編譯器。
參考:https://docs.oracle.com/javase/8/javafx/api/javafx/scene/control/Hyperlink.html
相關用法
- JavaFX 類 Pos用法及代碼示例
- JavaFX 類 Tab用法及代碼示例
- JavaFX 類 HTMLEditor用法及代碼示例
- JavaFX 類 FontPosture用法及代碼示例
- JavaFX 類 Font用法及代碼示例
- JavaFX 類 LinearGradient用法及代碼示例
- JavaFX 類 Stop用法及代碼示例
- JavaFX 類 CycleMethod用法及代碼示例
- JavaFX 類 Reflection用法及代碼示例
- JavaFX 類 StackPane用法及代碼示例
- JavaFX 類 FlowPane用法及代碼示例
- JavaFX 類 AnchorPane用法及代碼示例
- JavaFX 類 DirectoryChooser用法及代碼示例
- JavaFX 類 FileChooser用法及代碼示例
注:本文由純淨天空篩選整理自andrew1234大神的英文原創作品 JavaFX | Hyperlink Class。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。