2016-07-14 81 views
0

我有一個使用React和Material-UI的網頁,我想使用JavaFX的WebView將其嵌入到我的桌面應用程序中。但是,當我嘗試這樣做時,Material-UI中的選項卡無法按預期工作。第一次點擊一個按預期工作的選項卡,將顯示該選項卡的內容,並將該選項卡標記爲活動選項卡。此後,它停止工作,您無法切換選項卡。材質-UI選項卡不能在JavaFX WebView中工作

要重現下面的代碼應該足夠了這個問題:

import javafx.application.Application; 
import javafx.scene.Scene; 
import javafx.scene.layout.BorderPane; 
import javafx.scene.web.WebEngine; 
import javafx.scene.web.WebView; 
import javafx.stage.Stage; 

public class TabTest extends Application { 

    @Override 
    public void start(Stage primaryStage) throws Exception { 

     BorderPane pane = new BorderPane(); 
     Scene scene = new Scene(pane); 

     WebView webView = new WebView(); 
     WebEngine webEngine = webView.getEngine(); 

     webEngine.load("http://www.material-ui.com/#/components/tabs"); 

     pane.setCenter(webView); 

     primaryStage.setScene(scene); 
     primaryStage.setMaximized(true); 
     primaryStage.show(); 
    } 

    public static void main(String[] args) throws Exception { 
     Application.launch(TabTest.class); 
    } 
} 

觀察至今:

  • 標籤適用於常規的網絡瀏覽器。
  • 停止工作後,整個網頁似乎都會響應點擊(Material-UI點擊動畫隨處觸發)。我將記錄添加到Material-UI Tab組件,onTouchTap觸發了從我點擊的第一次點擊中選擇的Tab。

有誰知道這個問題可能是什麼,如果有什麼方法可以解決它?或者我應該把它作爲一個JavaFX錯誤?

+0

我申請一個bug到Oracle風格http://bugs.java.com/bugdatabase/ view_bug.do?bug_id=JDK-8161912。我在Java 9中運行並運行了它,但似乎Java 8中的webkit版本太舊了。 – QuestionMark

回答

0

我找到了一個解決此問題的對Java 8.添加

{ 
display: inline; 
position: relative; 
} 

每個標籤的

相關問題