Windows 7 で javafx アプリケーションを実行しようとしています。archlinux で正常に動作します。
次の方法でファイル選択ダイアログを開きます。
@Override
public void start(final Stage primaryStage) {
FileChooser fileChooser = new FileChooser();
fileChooser.setInitialDirectory(myInitialDir);
FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter("Wav files (*.wav)", "*.wav");
fileChooser.getExtensionFilters().add(extFilter);
File file = fileChooser.showOpenDialog(primaryStage);
}
上記の方法-Linuxではすべて問題ありませんが、Windowsでは奇妙なNPEが発生します。
Error:80070057 in SHCreateItemFromParsingName((PCWSTR)folder, NULL, IID_IShellItem, (void **)&pItem)
COM Error:80070057 0@0.
Error:80004005 in pOpenDialog->GetResults(&pFiles)
COM Error:80004005 5>?>7=0==0O >H81:0
java.lang.NullPointerException
at com.sun.glass.ui.CommonDialogs.showFileChooser(CommonDialogs.java:120)
at com.sun.javafx.tk.quantum.QuantumToolkit.showFileChooser(QuantumToolkit.java:1486)
at javafx.stage.FileChooser.showDialog(FileChooser.java:285)
at javafx.stage.FileChooser.showOpenDialog(FileChooser.java:234)
at ru.gkalabin.diploma.gui.equalizer.EqualizerDemo$1.handle(EqualizerDemo.java:107)
どうすればこれを修正できますか?