1. 程式人生 > >(翻譯)第二十三回 JavaFX2.0 超連結Hyperlink

(翻譯)第二十三回 JavaFX2.0 超連結Hyperlink

Example 17-4 Loading Remote Web Pages

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.*;
import javafx.scene.control.*;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.HBox;
import javafx.scene.layout.Priority;
import javafx.scene.layout.VBox;
import javafx.scene.text.Font;
import javafx.scene.web.WebEngine;
import javafx.scene.web.WebView;
import javafx.stage.Stage;
 
public class Main extends Application {
 
    final static String[] imageFiles = new String[]{
        "product.png",
        "education.png",
        "partners.png",
        "support.png"
    };
    final static String[] captions = new String[]{
        "Products",
        "Education",
        "Partners",
        "Support"
    };
 
    final static String[] urls = new String[]{
        "http://www.oracle.com/us/products/index.html",
        "http://education.oracle.com/",
        "http://www.oracle.com/partners/index.html",
        "http://www.oracle.com/us/support/index.html"
    };
    
    final ImageView selectedImage = new ImageView();
    final Hyperlink[] hpls = new Hyperlink[captions.length];
    final Image[] images = new Image[imageFiles.length];   
 
    public static void main(String[] args){
        launch(args);
    }
 
    @Override
    public void start(Stage stage) {
        VBox vbox = new VBox();
        Scene scene = new Scene(vbox);
        stage.setTitle("Hyperlink Sample");
        stage.setWidth(570);
        stage.setHeight(550);
 
        selectedImage.setLayoutX(100);
        selectedImage.setLayoutY(10);
        
        final WebView browser = new WebView();
        final WebEngine webEngine = browser.getEngine();
 
        for (int i = 0; i < captions.length; i++) {
            final Hyperlink hpl = hpls[i] = new Hyperlink(captions[i]);
 
            final Image image = images[i] =
                    new Image(getClass().getResourceAsStream(imageFiles[i]));
            hpl.setGraphic(new ImageView (image));
            hpl.setFont(Font.font("Arial", 14));
            final String url = urls[i];
 
            hpl.setOnAction(new EventHandler<ActionEvent>() {
                @Override
                public void handle(ActionEvent e) {
                    webEngine.load(url);
                }
            });
        }
              
        HBox hbox = new HBox();
        hbox.getChildren().addAll(hpls);
 
        vbox.getChildren().addAll(hbox, browser);
        VBox.setVgrow(browser, Priority.ALWAYS);
        
        stage.setScene(scene);
        stage.show();
    }
}

相關推薦

翻譯第二十三 JavaFX2.0 連結Hyperlink

Example 17-4 Loading Remote Web Pages import javafx.application.Application; import javafx.event.ActionEvent; import javafx.event.EventHandler; import ja

Spark入門到精通入門——第二節 Spark 2.0.0 檢視job 歷史日誌

本文十分的重要,希望對大家的spark學習有一些幫助: 1  引言: 在使用Spark的時候,有時候我們會關注job的歷史日誌,但是在Spark中預設情況下,歷史日誌是關閉的,在本篇部落格中主要介紹一下如何啟動spark的歷史日誌。 2  開啟歷史日誌伺服器 2.

強化學習第二翻譯第二版前言

(由百度翻譯修改而來,儘量保證邏輯通順,建議以原文為主)    自本書第一版出版以來的二十年裡,人工智慧取得了巨大的進步,這在很大程度上得益於機器學習的進步,包括強化學習的進步。雖然現有的令人印象深刻的計算能力是這些進步的主要原因,但理論和演算法的新發展也推動了這些力量的發展

一起talk C栗子吧第一百二十三:C語言實例--顯示變量和函數的地址

調試 ora 部分 example 多線程 ear red 語言 help 各位看官們,大家好,上一回中咱們說的是多線程的樣例。這一回咱們說的樣例是:顯示變量和函數的地址。閑話休提,言歸正轉。讓我們一起talk C栗子吧! 在編敲代碼時,有時候須

MySQL 8.0復制性能的提升翻譯

行存儲 快捷 試圖 提高 需要 並發 流量 trac sla What’s New With MySQL Replication in MySQL 8.0 MySQL復制從問世到現在已經經歷了多個年頭,它的穩定性和可靠性也在穩步的提高。這是一個不停進化的過程,

MySQL 8.0.2復制新特性翻譯

ogl 防止 將不 地址 arc -- 等待 download 日誌 譯者:知數堂星耀隊 MySQL 8.0.2復制新特性 MySQL 8 正在變得原來越好,而且這也在我們MySQL復制研發團隊引起了一陣熱潮。我們一直致力於全面提升MySQL復制,通過引入新的和一些有趣

Orleans 2.0官方文件閆輝的個人翻譯——1.3 Orleans 2.0

Orleans 2.0 2.0是Orleans的一個主要版本,其主要目標是使其與.NET Standard 2.0相容並跨平臺(通過.NET Core)。作為這項工作的一部分,Orleans API進行了幾次現代化,以使其更符合當今配置和託管ASP.NET等技術的方式。 由於它與.NET S

kafka文件4---- 0.8.2-Configuration-配置選項翻譯

來源:http://kafka.apache.org/documentation.html#configuration 3.     Configuration Kafka在配置檔案中使用key-value方式進行屬性配置。這些values可以通過檔案或者程式設計方式提

短學期2第二次心得

打開網頁 標識 無法查詢 company 初始 tin 讀取 ron .com 這幾天我們在原來網頁的基礎上給他設置了新增客戶信息,新增客戶信息中下拉列表可選的性別,並在網頁查詢時顯示出來,客戶信息的查詢與刪除,還解決了一系列接口等問題。 AOP ,表示權限管理,它讓開發人

sql優化oracle- 第二部分 常用sql用法和註意事項

個數 its 用法 記錄 減少 合並 .com 語句 一個 第二部分 常用sql用法和註意事項 1. exists 和 in 2. union 和 union all

翻譯2016美國數學建模MCM E題(環境)翻譯:我們朝向一個幹旱的星球?

make 歷史 evel miss try 這一 aspect content analyzing PROBLEM E: Are we heading towards a thirsty planet? Will the world run

數據系統結構之關系操作翻譯

pair set info cin several always dup similar data Published by McGraw-Hill, a business unit of The McGraw-Hill Companies, Inc., 1221 Aven

機器學習實戰—— 用線性歸預測波士頓房價

-1 png 機器學習 mage 回歸 線性回歸 blog 分享 機器 機器學習實戰(一)—— 用線性回歸預測波士頓房價

於媛齡201552118第二次作業網調問卷的制作

mage ges 回收 作業 問卷星 技術分享 alt log png 網調問卷的制作 一、登錄問卷星 二、創建問卷 三、添加問卷問題(選擇批量添加題目) 四、完成編輯 預覽問卷 五、發布問卷 六、問卷回收中 於媛齡(201552118)第二次

倪靜201550919第二次作業網絡調查問卷的制作

mage -s 技術分享 編輯 src blog ont 作業 cnblogs 網絡調查問卷的制作 1.登錄問卷星 2.創建問卷 3.完成編輯,問卷瀏覽 4.問卷完成 5.問卷回收 倪靜(201550919)第二次作業網絡調查問卷的制作

郭佳慶201551296第二次作業:調查問卷的制作

問卷星 技術分享 alt width logs img .com src com 調查問卷的制作 一.登錄問卷星 二.進入問卷星註冊之後,創建調查問卷添加調查名稱 三.添加問卷說明 四.添加問卷題目 五.批量添加題目 六.發布問卷 郭佳慶(20155

LINUX系統管理員技術Admin-------第二

linux系統掛載 重定向命令 cat、grep---查看的是文件 ? ?ls、----查看的是目錄 ? find----既可以查看文件也可以查看目錄?綠色:可以執行的程序?黑底×××:設備文件?青色:快捷方式? Linux命令 – 用來實現某一類功能的指令或程序 – 命令的執行依賴於解釋器(默認的解

LINUX系統工程師技術Engineer-------第二

郵件服務器的基本搭建 mariadb數據庫的部署 兩臺虛擬機,均修改防火器與主機名防火墻將原來的----------public狀態---------修改成-------trusted狀態虛擬機server0:# firewall-cmd --set-default-zone=trusted?# ec

LINUX系統服務與管理Services---------第二

根下常用的命令用途 自定義yum倉庫 ln創建軟連接 源碼包編譯安裝 主要用途/boot ? ? ? ? 存放系統引導必需的文件,包括內核、啟動配置/bin、/sbin ? 存放各種命令程序/dev ? ? ? ? ?存放硬盤、鍵盤、鼠標、光驅等各種設備文件/etc ? ? ? ? ?存放Li

微信消息加解密GoLang-- 接收和復加密消息

too simple 更改 chatapp body sge and print news 接收微信消息的接口內容: //"r"為*http.Request r.ParseForm() timestamp := strings.Join(r.For