Quando eu fiz minha GUI pelo Scene Builder estava funcionando bem no eclipse e eu salvo isso. E eu reabri eclipse sempre que eu criar um novo projeto e reabrir o eclipse / reiniciar o computador, ele sempre me mostra essa mensagem. E quando eu tentei abrir o meu documento FXML diz "**
A operação aberta falhou. Verifique se o arquivo escolhido é um válido Documento FXML
Por favor me ajude Aqui está o código
package application;
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
Parent root = FXMLLoader.load(getClass().getResource("MyDocmnt.fxml"));
Scene scene = new Scene(root);
primaryStage.setTitle("My Tittle");
primaryStage.setScene(scene);
primaryStage.show();
}
Respostas:
0 para resposta № 1Tente isto:
package application;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.stage.Stage;
import javafx.scene.Parent;
import javafx.scene.Scene;
public class Main extends Application {
@Override
public void start(Stage primaryStage) {
try {
Parent root = FXMLLoader.load(getClass().getResource("/application/MyDocmnt.fxml"));
Scene scene = new Scene(root);
primaryStage.setTitle("My Title");
primaryStage.setScene(scene);
primaryStage.show();
} catch(Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
launch(args);
}
}
0 para resposta № 2
A classe javafx.application.Application é uma classe abstrata. E o método start () é um método abstrato da classe Application.
Em Java, temos que implementar todo o resumométodos de uma classe abstrata ao estender essa classe abstrata. Aqui, estamos implementando o método abstrato (método start ()) substituindo o método start ().
Então, tente isto:
package application;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
public class Main extends Application{
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
Parent root = FXMLLoader.load(getClass().getResource("MyDocmnt.fxml"));
Scene scene = new Scene(root);
primaryStage.setTitle("My Tittle");
primaryStage.setScene(scene);
primaryStage.show();
}
}