teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

追記

2017/07/03 01:39

投稿

KSwordOfHaste
KSwordOfHaste

スコア18404

answer CHANGED
@@ -42,4 +42,8 @@
42
42
  このアプリケーションのドキュメント・ベースURIを取得します。アプリケーションがブラウザに埋め込まれている場合、このメソッドは**アプリケーションを含むWebページのURI**を返します。アプリケーションがwebstartモードで起動された場合、このメソッドは**JNLPファイルで指定されているコードベース・パラメータ**を返します(ドキュメント・ベースおよびコード・ベースはこのモードでは同じです)。アプリケーションがスタンドアロン・モードで起動された場合、このメソッドは**現在のディレクトリのURI**を返します。
43
43
 
44
44
  ---
45
+ 追記:指摘し忘れていましたが、ロードが成功しても失敗してもダイアログは閉じるべきだと思います。上の回答に書いた「ドキュメントベースやコードベース」の話とは別に、Workerの状態がSUCCEEDEDあるはFAILEDになった時点で閉じるようにすればよいでしょう。
46
+
47
+ ---
48
+
45
49
  JDK 1.8.0_131

2

コードベース・ドキュメントベースの説明の表現を変更

2017/07/03 01:39

投稿

KSwordOfHaste
KSwordOfHaste

スコア18404

answer CHANGED
@@ -30,9 +30,9 @@
30
30
 
31
31
  > 実行可能JARとして実行すると、Workerがほぼ全く「SUCCEEDED」になりません。
32
32
 
33
- WebEngineへのloadの引数が相対URLになっていてドキュメントベース/コードベースの違いが原因でロードに失敗しているのだと思います。ロードに失敗するとWorkerの状態はFAILEDで終わります。
33
+ WebEngineへのloadの引数が相対URLになっていて、実行環境によるドキュメントベース/コードベースの違いが原因でロードに失敗しているのだと思います。ロードに失敗するとWorkerの状態はFAILEDで終わります。
34
34
 
35
- コードベース・ドキュメントベースの違いについてはHostServiceのリファレンスに以下の記載があります。
35
+ 実行環境によるコードベース・ドキュメントベースの違いについてはHostServiceのリファレンスに以下の記載があります。
36
36
 
37
37
  [HostService](http://docs.oracle.com/javase/jp/8/javafx/api/javafx/application/HostServices.html)
38
38
  > public final String getCodeBase()

1

コードの冗長なthisを削除

2017/07/01 05:21

投稿

KSwordOfHaste
KSwordOfHaste

スコア18404

answer CHANGED
@@ -8,7 +8,7 @@
8
8
  ...import省略...
9
9
  public class MyApp extends Application {
10
10
  public void start(Stage stage) throws Exception {
11
- Parent root = FXMLLoader.load(this.getClass().getResource("Main.fxml"));
11
+ Parent root = FXMLLoader.load(getClass().getResource("Main.fxml"));
12
12
  stage.setScene(new Scene(root));
13
13
  ...
14
14
  }