Windowsマシンの更新を自動化するためのプログラムを作成しています。最後の日私はちょうどプログラムの現在の作業状態を保存して家に帰る。今日私はそれを処理しようとしたとき、コンパイル中であり、エラーなしに実行されていることに気付きましたが、非終端のjavaFx GUIが表示されています。私はそれを修復しようとすることでいくつかを費やします。私はEclipseネオンでプロジェクトをきれいにしました.3私はmeavenプロジェクトを再構築し、新しいクラスで新しいプロジェクトを作成し、コードをコピーします。 EclipseからIntelliJにプロジェクトを移してそこで実行することさえできます。行動は同じでした。Java fxプログラムを実行してコンパイルすると表示されるguiが表示されない
私のメインはそういうものなので、それについては特別なことはありません。 メインオブジェクトがtableViewであり、いくつかのサイド情報であるメインfxmlをロードします。
@Override
public void start(Stage primaryStage) throws IOException, InterruptedException, InvalidFormatException {
tableList = makeMainList();
JavaFXmainClass.primaryStage = primaryStage;
JavaFXmainClass.primaryStage.setTitle("xD Pro Windows Updater Manager Ascendet Master OP xD");
showMainView();
}
public void showMainView() throws IOException{
final FXMLLoader loader = new FXMLLoader();
System.out.println(this.getClass().getResource("fxml//MainView.fxml"));
loader.setLocation(this.getClass().getResource("fxml//MainView.fxml"));
mainLayout = loader.load();
Scene scene = new Scene(mainLayout);
primaryStage.setScene(scene);
System.out.println("On the end of showMainView()");
}
public static void main(String[] args) {
launch(args);
}
私はこのようにテーブルを初期化しています。 「showMainView(の終わりに)」i「がtableView.setItems後」 を読むことができるコンソル出力に
@Override
public void initialize(URL arg0, ResourceBundle arg1) {
//setting combobox items
StartTime.getItems().addAll(comboBoxValues);
EndTime.getItems().addAll(comboBoxValues);
StartTime.setPromptText("Start Time");
EndTime.setPromptText("End Time");
//adding listiner for combobox
addComboBoxChangeListiner(StartTime, What.STARTTIME);
addComboBoxChangeListiner(EndTime, What.ENDTIME);
setColumns();
mainTable = JavaFXmainClass.getTableList();
tableList = fromArrayToObservableArray(mainTable, tableList);
System.out.println(mainTable.size());
System.out.println("before tableView.setItems");
tableView.setItems(mainTable);
System.out.println("after tableView.setItems");
}
private void setColumns() {
tableView.setFixedCellSize(35);
id.setCellValueFactory(new PropertyValueFactory<Id,Integer>("id"));
ip.setCellValueFactory(new PropertyValueFactory<Server,String>("ip"));
name.setCellValueFactory(new PropertyValueFactory<Server,String>("name"));
type.setCellValueFactory(new PropertyValueFactory<Server,String>("type"));
date.setCellValueFactory(new PropertyValueFactory<Server,LocalDate>("date"));
id.setCellFactory(new LineNumberCellFactory());
ip.setCellFactory(new getObjectIp());
}
、その後 ので、それは(私は右だ?)を注入依存関係が正常に終わったこと とあなたは01に電話をするのを忘れたhttps://codepaste.net/z06nzf