为什么我不能将Ace编辑器嵌入到WebView中? [英] Why can't I embed Ace Editor into WebView?
本文介绍了为什么我不能将Ace编辑器嵌入到WebView中?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图在JavaFX 2.2中编写一个简单的编辑器。我下载了 Ace Editor
版本库,并创建了一个测试页面,双击时可以正常工作。 然而,当我试图将它嵌入到 WebView
中时,它不起作用。
SSCCE :
;
import javafx.application.Application;
import javafx.geometry.Pos;
import javafx.scene.Scene;
导入javafx.scene.SceneBuilder;
import javafx.scene.layout.StackPane;
import javafx.scene.layout.StackPaneBuilder;
import javafx.scene.web.WebEngine;
导入javafx.scene.web.WebView;
导入javafx.scene.web.WebViewBuilder;
import javafx.stage.Stage;
公共类EditorTrial扩展应用程序{
WebView webView;
WebEngine引擎;
StackPane堆栈;
场景场景;
@Override
public void start(Stage primStage)throws Exception {
stack = StackPaneBuilder
.create()
.alignment Pos.CENTER)
.build();
webView = WebViewBuilder
.create()
.build();
engine = webView.getEngine();
engine.setJavaScriptEnabled(true);
engine.load(/ home / little / Downloads / AceEditor / ace-builds-master / MyTrial.html);
stack.getChildren()。add(webView);
scene = SceneBuilder
.create()
.root(stack)
.build();
primStage.setScene(scene);
primStage.sizeToScene();
primStage.show();
$ b public static void main(String [] args){
Application.launch(web.EditorTrial);
}
}
有人可以告诉我什么是错的?
当我使用绝对文件路径时,它适用于我:
try
文件f =新文件(/ home / little / Downloads / AceEditor / ace-builds-master / MyTrial.html);
String StrURL = f.toURI()。toURL()。toString();
engine.load(StrURL);
I am attempting to make a simple editor in JavaFX 2.2. I downloaded Ace Editor
repository and created a test page which works fine when double clicked.
However, it does not work when I try to embed it into the WebView
.
SSCCE:
package web;
import javafx.application.Application;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.SceneBuilder;
import javafx.scene.layout.StackPane;
import javafx.scene.layout.StackPaneBuilder;
import javafx.scene.web.WebEngine;
import javafx.scene.web.WebView;
import javafx.scene.web.WebViewBuilder;
import javafx.stage.Stage;
public class EditorTrial extends Application{
WebView webView;
WebEngine engine;
StackPane stack;
Scene scene;
@Override
public void start(Stage primStage) throws Exception {
stack = StackPaneBuilder
.create()
.alignment(Pos.CENTER)
.build();
webView = WebViewBuilder
.create()
.build();
engine = webView.getEngine();
engine.setJavaScriptEnabled(true);
engine.load("/home/little/Downloads/AceEditor/ace-builds-master/MyTrial.html");
stack.getChildren().add(webView);
scene = SceneBuilder
.create()
.root(stack)
.build();
primStage.setScene(scene);
primStage.sizeToScene();
primStage.show();
}
public static void main(String[] args) {
Application.launch("web.EditorTrial");
}
}
Can someone please tell me what is wrong?
解决方案
It works for me when the absolute file path :
try
File f = new File("/home/little/Downloads/AceEditor/ace-builds-master/MyTrial.html");
String StrURL = f.toURI().toURL().toString();
engine.load(StrURL);
这篇关于为什么我不能将Ace编辑器嵌入到WebView中?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文