Gericht erstellen Maske

This commit is contained in:
SvenAlte
2023-12-13 18:51:01 +01:00
parent cf4014f552
commit 99419ed471
7 changed files with 107 additions and 5 deletions

View File

@@ -9,6 +9,8 @@ import javafx.scene.layout.ColumnConstraints;
import javafx.scene.layout.GridPane;
import javafx.scene.layout.Priority;
import javafx.scene.layout.RowConstraints;
import javafx.stage.Modality;
import javafx.stage.Stage;
public class EssensverwaltungMitarbeiterView {
@@ -42,6 +44,15 @@ public class EssensverwaltungMitarbeiterView {
}
public void onHinzufuegen(ActionEvent actionEvent) {
Stage gerichterstellung = new Stage();
//solange das neu geöffnete Fenster offen ist, wird das Hauptfenster gesperrt
gerichterstellung.initModality(Modality.APPLICATION_MODAL);
VerwaltungApplication.sceneWechseln(gerichterstellung, 400, 530, "gerichterstellung_mitarbeiter-view.fxml");
gerichterstellung.minWidthProperty().set(400);
gerichterstellung.minHeightProperty().set(530);
}
public void onZurueck(ActionEvent actionEvent) {

View File

@@ -0,0 +1,52 @@
package de.subway_surfers.vpr_app;
import de.subway_surfers.vpr_app.logik.Zutat;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.scene.Node;
import javafx.scene.control.Button;
import javafx.scene.control.TextArea;
import javafx.scene.control.TextField;
import javafx.scene.layout.HBox;
import javafx.scene.layout.Pane;
import java.util.ArrayList;
public class GerichterstellungMitarbeiterView {
private @FXML HBox anzeigeInhaltsstoffe;
private @FXML TextArea eingabeBeschreibung;
private @FXML TextField eingabeName;
private @FXML Button buttonInhaltsstoffe;
private @FXML TextField eingabeInhaltsstoffe;
private ArrayList<Zutat> zutaten;
public void initialize() {
zutaten = new ArrayList<>();
//wird das Fenster vergrößert, wird das Eingabefeld für Inhaltstoffe und den Hinzufügenbutton
// auf die volle breite vergrößert.
((Pane) eingabeInhaltsstoffe.getParent()).widthProperty().addListener((obs, oldValue, newValue) -> {
//eingabeName, da dieses Feld immer die gesamte breite der Stage haben.
eingabeInhaltsstoffe.setPrefWidth(eingabeName.getWidth() - buttonInhaltsstoffe.getPrefWidth());
});
}
public void onButtonInhaltsstoffeClick(ActionEvent actionEvent) {
String text = eingabeInhaltsstoffe.getText();
if (!text.equals("")) {
eingabeInhaltsstoffe.setText("");
Button neuerInhalt = new Button();
neuerInhalt.setText(text);
anzeigeInhaltsstoffe.getChildren().add(neuerInhalt);
Zutat neue = new Zutat(text);
zutaten.add(neue);
neuerInhalt.setOnAction(e -> {
((HBox) neuerInhalt.getParent()).getChildren().remove(neuerInhalt);
zutaten.remove(neue);
});
}
}
}

View File

@@ -8,8 +8,11 @@ public class HauptmenueMitarbeiterView {
VerwaltungApplication.abmelden();
}
public void onAccountAnlegen(ActionEvent actionEvent) {
public void onAccountAnlegenClick(ActionEvent actionEvent) {
VerwaltungApplication.sceneWechseln("accounterstellung_mitarbeiter.fxml");
}
public void onSpeiseplanClick(ActionEvent actionEvent) {
VerwaltungApplication.sceneWechseln("essensverwaltung_mitarbeiter-view.fxml");
}
}

View File

@@ -95,10 +95,12 @@ public class VerwaltungApplication extends Application {
Stage akt = VerwaltungApplication.getStage();
//neue Scene wird auf eine neue Stage gesetzt
try {
Scene scene = new Scene(fxmlLoader.load(), width, height);
Scene scene = new Scene(fxmlLoader.load());
neue.setScene(scene);
neue.show();
neue.setHeight(height);
neue.setWidth(width);
}
//wird die angegebene fxml Datei nicht gefunden, wird ein Alertfenster geöffnet
catch (IOException | RuntimeException e) {