は、私は、比較的簡単なテストクラスを書いた:のNPE
public class Main extends Application {
@Override public void start(Stage stage) {
BorderPane root = new BorderPane();
Scene scene = new Scene(root, 400, 400);
HTMLEditor editor = new HTMLEditor();
root.setCenter(editor);
Platform.runLater(editor::requestFocus);
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
私は(エディタが焦点を当てています)これを実行すると、私は、私は、このかなり暗い探しウィンドウに迎え、と私は何かを入力するとしていますすぐNullPointerException
を得る:
Exception in thread "JavaFX Application Thread" java.lang.NullPointerException
at com.sun.javafx.scene.web.skin.HTMLEditorSkin.applyTextFormatting(HTMLEditorSkin.java:1100)
at com.sun.javafx.scene.web.skin.HTMLEditorSkin.lambda$new$3(HTMLEditorSkin.java:293)
at com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(CompositeEventHandler.java:218)
...
私が最初に気づいた三つのことがあった。
- エラーが
HTMLEditorSkin
に関連すると思われるので、私は1つを適用しようとしたが、Eclipseは、このクラスはAPIではない私を知らせます。これをどうすればいいのですか?もしそうなら、私はアクセス制限をするべきですか?(JavaFX自体はAPIではないので) HTMLEditor
は、焦点の合っていないに見え、デフォルトによって全く選択したフォントがありません(私は問題が引き起こされている場合、これはあると思いますが。)HTMLEditorSkin
は、パッケージ階層com.sun.javafx
なくjavafx
からです。
しかし、私はfirst example of Oracle's tutorialに従って正しく処理しているようです。
ここで何が問題になりますか?これはバグかもしれないような気がする。 setHtmlText
で最初のテキストを設定する
- :
未遂ソリューションや、既に受け取った答え。
setHtmlText("<body style='font-family: something;'>text</body>");
これは、テキストとフォントを設定しないが、エディタは影響を受けません。setStyle
と - セットスタイル。
setStyle("-fx-font: 12 something");
これは、UIフォントのみを変更します。 - JDK 8u122のインストール。
それは(ほとんどのLinuxで、私は思う)一部の環境で発生するバグです。 JDK 8u122にアップグレードしてバグがなくなりました。 – Omid
@Omid私はWindowsを使用していますが、一度私のPCに戻ってみることにします。編集:これは初期のアクセスビルドのようです - これは修正されましたか? – Moira
はい、早期アクセスビルドです。私は8u121(現在)で修正されているかどうかはわかりませんが、できるだけ早く確認しようとしています。 – Omid