Ich benutze zur zeit einen Laptop die Oberfläche Eclipse neon3 und habe e(fx)clipse aus dem Marketplace installiert. Ich habe den scenebuilder 2 installiert. Und nach dem onlineTutorial folgende Listings erstellt
package application;
und die MainWindow.fxml
in der view ansicht javafxPreview von eclipse wird das Fenster korrekt angezeigt.
Nach dem Run öffnet sich ein Fenster mit weißer Fläche.
der Windows Paht ist auf C:\Program Files\Java\jdk1.8.0_131
und classpaht auf C:\Program Files\Java\jdk1.8.0_131\jre\lib\rt.
Was ist falsch?
package application;
Java:
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.layout.AnchorPane;
public class Main extends Application {
private Stage primaryStage;
public void start(Stage primaryStage) {
this.primaryStage = primaryStage;
mainWindow();
}
public void mainWindow(){
try{
FXMLLoader loader = new FXMLLoader(Main.class.getResource("MainWindow.fmxl"));
AnchorPane pane =loader.load();
primaryStage.setMinHeight(400.00);
primaryStage.setMinWidth(400.00);
MainWindowController mainWindowController = loader.getController();
mainWindowController.setMain(this);
Scene scene=new Scene(pane);
primaryStage.setScene(scene);
primaryStage.show();
} catch(Exception e) {
}
}
}
Java:
package application;
import java.awt.Button;
import java.awt.Label;
import javafx.fxml.FXML;
import javafx.scene.control.TextField;
public class MainWindowController {
//views
@FXML private Label label;
@FXML private TextField field ;
@FXML private TextField text33;
@FXML private Button Print;
@FXML private Button clear;
public Main main;
public void setMain(Main main){
this.main = main;
}
@FXML
public void handelprint(){
text33=field;
}
@FXML
public void handelclir1(){
field.clear();
}
}
XML:
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.*?>
<?import javafx.scene.effect.*?>
<?import java.lang.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.layout.AnchorPane?>
<fx:root cache="true" cacheHint="QUALITY" prefHeight="400.0" prefWidth="500.0" type="AnchorPane" xmlns="[URL]http://javafx.com/javafx/8[/URL]" xmlns:fx="[URL]http://javafx.com/fxml/1[/URL]" fx:controller="MainWindowContrller.java">
<!-- TODO Add Nodes -->
<children>
<VBox id="VBox" alignment="CENTER" blendMode="GREEN" spacing="5.0" AnchorPane.bottomAnchor="10.0" AnchorPane.leftAnchor="10.0" AnchorPane.rightAnchor="10.0" AnchorPane.topAnchor="10.0">
<children>
<Label fx:id="label" alignment="CENTER" text="Label" />
<TextField fx:id="field" alignment="CENTER" onAction="#fildakt" onMouseMoved="#handeltext" prefWidth="200.0" />
<Button fx:id="Print" blendMode="GREEN" cache="true" cacheHint="QUALITY" mnemonicParsing="false" onAction="#handelprint" text="Print" textOverrun="WORD_ELLIPSIS" />
<Button fx:id="clear" blendMode="GREEN" cache="true" cacheHint="QUALITY" mnemonicParsing="false" onAction="#handelclir2" text="clear" />
<TextField fx:id="text33" alignment="CENTER" onMouseExited="#handelfill" prefWidth="200.0" />
</children>
<cursor>
<Cursor fx:constant="DEFAULT" />
</cursor>
</VBox>
</children>
</fx:root>
Nach dem Run öffnet sich ein Fenster mit weißer Fläche.
der Windows Paht ist auf C:\Program Files\Java\jdk1.8.0_131
und classpaht auf C:\Program Files\Java\jdk1.8.0_131\jre\lib\rt.
Was ist falsch?
Zuletzt bearbeitet von einem Moderator: