Compare commits

...

13 Commits

Author SHA1 Message Date
0adbe6caf3 commented 2023-02-06 05:11:36 +01:00
911dd9f2d3 some unused Methods implemented 2023-02-05 22:45:10 +01:00
22cc69ecf7 bug fixes 2023-02-03 14:07:30 +01:00
85a599cda5 Kommentare ergänzt 2023-02-01 12:27:20 +01:00
f664299fae Merge branch 'main' of https://git.bib.de/DopplerEffekt/VPR-Projekt-JavaFX
# Conflicts:
#	src/main/java/com/example/vpr_javafx/Data.java
#	src/main/java/com/example/vpr_javafx/HelloController.java
#	target/classes/com/example/vpr_javafx/Data.class
#	target/classes/com/example/vpr_javafx/HelloController.class
#	target/classes/com/example/vpr_javafx/MenuOverview-view.fxml
#	user.txt
2023-02-01 12:21:32 +01:00
d3f08d30a5 Bestellungsverarbeitung 2023-02-01 12:12:26 +01:00
f1db5ecca9 Kommentare ergänzt 2023-02-01 11:58:55 +01:00
aecf521d96 Tweaks 2023-02-01 09:50:47 +01:00
1e6d13698f Updated 2023-02-01 09:13:24 +01:00
30511d32b4 changeorder-view hinzugefügt 2023-02-01 08:52:15 +01:00
8ac02b756b anpassungen Registration-view.fxml 2023-02-01 08:51:35 +01:00
b9ccf98bf6 Merge branch 'main' of https://git.bib.de/DopplerEffekt/VPR-Projekt-JavaFX 2023-01-31 21:25:08 +01:00
159f04271c Registrierung abgeschlossen 2023-01-31 21:24:48 +01:00
24 changed files with 694 additions and 284 deletions

View File

@@ -1,20 +1,20 @@
Montag;Pommes;mit Kroketten und Gemüse;Vegan;g,2,3 06.02.2023;Montag;Pommes;mit Kroketten und Gemüse;Vegan;g,2,3
Montag;Vegane Waffel;mit Puderzucker;DessertV;g,b,k 06.02.2023;Montag;Vegane Waffel;mit Puderzucker;DessertV;g,b,k
Montag;Schnitzel;mit Kroketten, Gemüse und Soße;Fleisch;g,c,a,2,3 06.02.2023;Montag;Schnitzel;mit Kroketten, Gemüse und Soße;Fleisch;g,c,a,2,3
Montag;Wackelpudding;mit Vanillesoße;Dessert;c,2 06.02.2023;Montag;Wackelpudding;mit Vanillesoße;Dessert;c,2
Dienstag;Rote Linsen Curry;mit Süßkartoffeln;Vegan;g,b,2,3 07.02.2023;Dienstag;Rote Linsen Curry;mit Süßkartoffeln;Vegan;g,b,2,3
Dienstag;Vegane Pancakes;mit Ahornsirup;DessertV;g,b,3 07.02.2023;Dienstag;Vegane Pancakes;mit Ahornsirup;DessertV;g,b,3
Dienstag;Gebratene Nudeln;mit Gemüse;Vegetarisch;b,c,a,i,3 07.02.2023;Dienstag;Gebratene Nudeln;mit Gemüse;Vegetarisch;b,c,a,i,3
Dienstag;Berliner;mit Erdbeerfüllung;Dessert;c,a 07.02.2023;Dienstag;Berliner;mit Erdbeerfüllung;Dessert;c,a
Mittwoch;Bratkartoffeln;mit veganer Bratensoße;Vegan;b,2,3 08.02.2023;Mittwoch;Bratkartoffeln;mit veganer Bratensoße;Vegan;b,2,3
Mittwoch;Pudding;mit Schokostreuseln;DessertV;b,2 08.02.2023;Mittwoch;Pudding;mit Schokostreuseln;DessertV;b,2
Mittwoch;Bratkartoffeln;mit Leberkäse und Ei;Fleisch;a,j,2,3 08.02.2023;Mittwoch;Bratkartoffeln;mit Leberkäse und Ei;Fleisch;a,j,2,3
Mittwoch;Pudding;mit Vanillesoße;Dessert;c,2 08.02.2023;Mittwoch;Pudding;mit Vanillesoße;Dessert;c,2
Donnerstag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3 09.02.2023;Donnerstag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3
Donnerstag;Bananenbrot;mit Datteln;DessertV;g,c 09.02.2023;Donnerstag;Bananenbrot;mit Datteln;DessertV;g,c
Donnerstag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3 09.02.2023;Donnerstag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3
Donnerstag;Bananenbrot;mit Datteln;DessertV;g,c 09.02.2023;Donnerstag;Bananenbrot;mit Datteln;DessertV;g,c
Freitag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3 10.02.2023;Freitag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3
Freitag;Bananenbrot;mit Datteln;DessertV;g,c 10.02.2023;Freitag;Bananenbrot;mit Datteln;DessertV;g,c
Freitag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3 10.02.2023;Freitag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3
Freitag;Bananenbrot;mit Datteln;DessertV;g,c 10.02.2023;Freitag;Bananenbrot;mit Datteln;DessertV;g,c

25
parentOrder.txt Normal file
View File

@@ -0,0 +1,25 @@
[Felix Düsterhaus;Detmolderstrasse 101,33102 Paderborn;1234567;Lisa;12345678A, Hauptgericht: Pommes
mit Kroketten und Gemüse
(g,2,3) Dessert: Vegane Waffel
mit Puderzucker
(g,b,k), Hauptgericht: Bratkartoffeln
mit veganer Bratensoße
(b,2,3) Dessert: Pudding
mit Schokostreuseln
(b,2)]
[Felix Düsterhaus;Detmolderstrasse 101,33102 Paderborn;1234567;Lisa;12345678A, Hauptgericht: Rote Linsen Curry
mit Süßkartoffeln
(g,b,2,3) Dessert: Vegane Pancakes
mit Ahornsirup
(g,b,3)]
[Felix Düsterhaus;Detmolderstrasse 101,33102 Paderborn;1234567;Lisa;12345678A, Hauptgericht: Rote Linsen Curry
mit Süßkartoffeln
(g,b,2,3) Dessert: Vegane Pancakes
mit Ahornsirup
(g,b,3), Hauptgericht: Bratkartoffeln
mit veganer Bratensoße
(b,2,3) Dessert: Pudding
mit Schokostreuseln
(b,2)]
[Felix Düsterhaus
]

View File

@@ -60,7 +60,7 @@
<!-- Default configuration for running with: mvn clean javafx:run --> <!-- Default configuration for running with: mvn clean javafx:run -->
<id>default-cli</id> <id>default-cli</id>
<configuration> <configuration>
<mainClass>com.example.vpr_javafx/com.example.vpr_javafx.HelloApplication</mainClass> <mainClass>com.example.vpr_javafx/com.example.vpr_javafx.MainApplication</mainClass>
</configuration> </configuration>
</execution> </execution>
</executions> </executions>

View File

@@ -16,7 +16,6 @@ import java.util.List;
import java.util.Scanner; import java.util.Scanner;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;
import javax.swing.*;
/** /**
* Data is a class to edit files. * Data is a class to edit files.
@@ -47,8 +46,8 @@ public class Data {
{ {
String[] parts = lines.get(i).split(";"); String[] parts = lines.get(i).split(";");
String phoneNumber = parts[3]; String phoneNumber = parts[2];
String password = parts[5]; String password = parts[4];
user.put(phoneNumber, password); user.put(phoneNumber, password);
} }
@@ -75,12 +74,11 @@ public class Data {
String[] parts = row.split(";"); String[] parts = row.split(";");
String nameParent1 = parts[0]; String nameParent1 = parts[0];
String nameParent2 = parts[1]; String billAddress = parts[1];
String billAddress = parts[2]; String phonenumber = parts[2];
String phonenumber = parts[3]; String nameChildren = parts[3];
String nameChildren = parts[4]; String password = parts[4];
String password = parts[5]; userList.add(new com.example.vpr_javafx.User(nameParent1, billAddress, phonenumber, nameChildren, password));
userList.add(new com.example.vpr_javafx.User(nameParent1, nameParent2, billAddress, phonenumber, nameChildren, password));
} }
return userList; return userList;
@@ -283,12 +281,15 @@ public class Data {
} }
/** /**
* The method validates the user input * The method validates the user input for login
* *
* @return boolean inputValid * @param tfPhone Phone number the user typed in
* @author Kevin Maier, Kevin Pfannenstiel * @param pfPassword Password the user typed in
* @param controller Controller
* @return phoneNumberValid, passwordValid
* @author Kevin Maier, Kevin Pfannenstiel
*/ */
public boolean validateData(TextField tfPhone, PasswordField pfPassword, HelloController controller) public boolean validateData(TextField tfPhone, PasswordField pfPassword, MainController controller)
{ {
boolean phoneNumberMatchFound; boolean phoneNumberMatchFound;
boolean passwordMatchFound; boolean passwordMatchFound;
@@ -300,8 +301,8 @@ public class Data {
String phoneNumber = tfPhone.getText(); String phoneNumber = tfPhone.getText();
String password = pfPassword.getText(); String password = pfPassword.getText();
Pattern phoneNumberPattern = Pattern.compile("[0-9]*"); Pattern phoneNumberPattern = Pattern.compile("[0-9]*"); // Pattern that requires numbers
Pattern passwordPattern = Pattern.compile("^(?=.*[A-Za-z])(?=.*\\d)[A-Za-z\\d]{8,}$"); Pattern passwordPattern = Pattern.compile("^(?=.*[A-Za-z])(?=.*\\d)[A-Za-z\\d]{8,}$"); // Pattern that requires minimum eight characters, at least one letter and one number
if (password.isEmpty() || phoneNumber.isEmpty()) if (password.isEmpty() || phoneNumber.isEmpty())
{ {
@@ -355,48 +356,124 @@ public class Data {
public ArrayList<com.example.vpr_javafx.Order> changeOrder(String userLogin) { public ArrayList<com.example.vpr_javafx.Order> changeOrder(String userLogin) {
/*
File orderFile = new File("C:/Unterricht/VPR/orders.txt");
if (orderFile.delete()) {
System.out.println("Datei gelöscht: " + orderFile.getName());
} else {
System.out.println("Fehler, " + orderFile.getName() + " nicht gelöscht.");
}
*/
ArrayList<com.example.vpr_javafx.Order> changedOrderList = new ArrayList<>(); ArrayList<com.example.vpr_javafx.Order> changedOrderList = new ArrayList<>();
List<String> rows = getRows(); List<String> rows = getRows();
int changedEntries = 0; int changedEntries = 0;
//ImageIcon icon = new ImageIcon("file:target/classes/com/example/vpr_javafx/pics/vegetarisch.png"); for (String row : rows) {
UIManager.put("OptionPane.noButtonText", "Nein"); String[] parts = row.split(";");
UIManager.put("OptionPane.yesButtonText", "Ja");
int result = JOptionPane.showInternalConfirmDialog(null, "Bestellungen wirklich Löschen?", "Bestätigung", JOptionPane.YES_NO_OPTION);
if (result == JOptionPane.YES_OPTION) { String date = parts[0];
for (String row : rows) { String user = parts[1];
String[] parts = row.split(";"); String mealtyp = parts[2];
String deserttyp = parts[3];
String date = parts[0]; if(!userLogin.equals(user)) {
String user = parts[1]; changedOrderList.add(new com.example.vpr_javafx.Order(date, user, mealtyp, deserttyp));
String mealtyp = parts[2]; } else {
String deserttyp = parts[3]; changedEntries++;
if(!userLogin.equals(user)) {
changedOrderList.add(new com.example.vpr_javafx.Order(date, user, mealtyp, deserttyp));
} else {
changedEntries++;
}
} }
try { }
try {
FileWriter writer = new FileWriter("orders2.txt"); FileWriter writer = new FileWriter("orders2.txt");
for(com.example.vpr_javafx.Order str: changedOrderList) { for(com.example.vpr_javafx.Order str: changedOrderList) {
writer.write(str + System.lineSeparator()); writer.write(str + System.lineSeparator());
} }
writer.close(); writer.close();
System.out.println("Daten gelöscht");
System.out.println(changedEntries + " Einträge entfernt.");
} catch (IOException e) { } catch (IOException e) {
e.printStackTrace(); e.printStackTrace();
}
JOptionPane.showMessageDialog(null, changedEntries + " Bestellungen Gelöscht, Sie können eine neue Bestellung aufgeben");
} else {
JOptionPane.showMessageDialog(null, "Bestellung nicht gelöscht.");
} }
return changedOrderList; return changedOrderList;
} }
/**
* The method validates the user input for registration
*
* @param tfName The name the user typed in
* @param tfPhone The phone number the user typed in
* @param pfPassword The password the user typed in
* @param tfStreet The street name the user typed in
* @param tfHouseNumber The house number the user typed in
* @param tfPostalCode The postal code the user typed in
* @param tfCity The city the user typed in
* @param tfChild The child the user typed in
* @param controller Controller
* @return phoneNumberValid, passwordValid, postalCodeValid
*/
public boolean validateRegistration(TextField tfName, TextField tfPhone, PasswordField pfPassword, TextField tfStreet, TextField tfHouseNumber, TextField tfPostalCode, TextField tfCity, TextField tfChild, MainController controller)
{
boolean phoneNumberMatchFound;
boolean passwordMatchFound;
boolean postalCodeFound;
boolean phoneNumberValid = false;
boolean passwordValid = false;
boolean postalCodeValid = false;
Alert alert = new Alert(Alert.AlertType.WARNING);
HashMap<String, String> users = readLoginData();
String phoneNumber = tfPhone.getText();
String password = pfPassword.getText();
String postalCode = tfPostalCode.getText();
Pattern phoneNumberPattern = Pattern.compile("[0-9]*"); // Pattern that requires numbers
Pattern passwordPattern = Pattern.compile("^(?=.*[A-Za-z])(?=.*\\d)[A-Za-z\\d]{8,}$"); // Pattern that requires minimum eight characters, at least one letter and one number
Pattern postalCodePattern = Pattern.compile("[0-9]{5}"); // Pattern that requires 5 numbers
if (tfName.getText().isEmpty() || tfPhone.getText().isEmpty() || pfPassword.getText().isEmpty() || tfStreet.getText().isEmpty() || tfHouseNumber.getText().isEmpty() || tfPostalCode.getText().isEmpty() || tfCity.getText().isEmpty() || tfChild.getText().isEmpty())
{
alert.setContentText("Registrierung fehlgeschlagen. Registrierungsdaten unvollständig.");
alert.show();
}
Matcher phoneNumberMatcher = phoneNumberPattern.matcher(phoneNumber);
Matcher passwordMatcher = passwordPattern.matcher(password);
Matcher postalCodeMatcher = postalCodePattern.matcher(postalCode);
phoneNumberMatchFound = phoneNumberMatcher.find();
passwordMatchFound = passwordMatcher.find();
postalCodeFound = postalCodeMatcher.find();
if (users.containsKey(phoneNumber) || !phoneNumberMatchFound || phoneNumber.length() >= 15)
{
alert.setContentText("Registrierung fehlgeschlagen. Die eingegebenen Telefonnummer ist bereits vergeben oder ist nicht korrekt.");
alert.show();
}
else
{
phoneNumberValid = true;
}
if (!passwordMatchFound)
{
alert.setContentText("Registrierung fehlgeschlagen. Das Passwort muss mindestens 8 Zeichen lang sein und mindestens 1 Ziffer und 1 Zeichen beinhalten.");
alert.show();
}
else
{
passwordValid = true;
}
if (!postalCodeFound)
{
alert.setContentText("Registrierung fehlgeschlagen. Die Postleitzahl ist nicht richtig.");
}
else
{
postalCodeValid = true;
}
return phoneNumberValid && passwordValid && postalCodeValid;
}
} }

View File

@@ -1,42 +0,0 @@
//package com.example.vpr_javafx;
//
//import java.io.IOException;
//import java.nio.file.Files;
//import java.nio.file.Paths;
//import java.util.HashMap;
//import java.util.List;
//
//public class LoginDatei
//{
// private final String dateiname;
//
// public LoginDatei(String dateiname)
// {
// this.dateiname = dateiname;
// }
//
// public HashMap<String, String> readFile()
// {
// try {
// List<String> lines = Files.readAllLines(Paths.get(dateiname));
//
// HashMap<String, String> user = new HashMap<>();
//
// for (int i = 0; i < lines.size(); i++)
// {
// String[] parts = lines.get(i).split(";");
//
// String phoneNumber = parts[3];
// String password = parts[5];
//
// user.put(phoneNumber, password);
// }
//
// return user;
//
// } catch (IOException e) {
// e.printStackTrace();
// return new HashMap<>();
// }
// }
//}

View File

@@ -7,20 +7,18 @@ import javafx.stage.Stage;
import java.io.IOException; import java.io.IOException;
public class HelloApplication extends Application { public class MainApplication extends Application {
@Override @Override
public void start(Stage stage) throws IOException { public void start(Stage stage) throws IOException {
FXMLLoader fxmlLoader = new FXMLLoader(HelloApplication.class.getResource("MenuOverview-view.fxml")); FXMLLoader fxmlLoader = new FXMLLoader(MainApplication.class.getResource("MenuOverview-view.fxml"));
Scene scene = new Scene(fxmlLoader.load(),1000, 800); Scene scene = new Scene(fxmlLoader.load(),1000, 800);
stage.setTitle("Mittagsbestellung"); stage.setTitle("Mittagsbestellung");
stage.setScene(scene); stage.setScene(scene);
stage.show(); stage.show();
HelloController controller = fxmlLoader.getController(); MainController controller = fxmlLoader.getController();
controller.FillLabels(); controller.FillLabels();
controller.writeAllergene(); controller.writeAllergene();
} }
public static void main(String[] args) { public static void main(String[] args) {launch();}
launch();
}
} }

View File

@@ -1,5 +1,7 @@
package com.example.vpr_javafx; package com.example.vpr_javafx;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent; import javafx.event.ActionEvent;
import javafx.fxml.FXML; import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader; import javafx.fxml.FXMLLoader;
@@ -9,20 +11,17 @@ import javafx.scene.Scene;
import javafx.scene.control.*; import javafx.scene.control.*;
import javafx.scene.image.Image; import javafx.scene.image.Image;
import javafx.scene.image.ImageView; import javafx.scene.image.ImageView;
import javafx.scene.layout.AnchorPane; import javafx.scene.layout.StackPane;
import javafx.stage.Stage; import javafx.stage.Stage;
import java.io.Console;
import java.io.File;
import java.io.FileWriter; import java.io.FileWriter;
import java.io.IOException; import java.io.IOException;
import java.nio.file.Files; import java.nio.file.Files;
import java.nio.file.Paths; import java.nio.file.Paths;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.Arrays;
import java.util.List; import java.util.List;
public class HelloController { public class MainController {
@FXML @FXML
private Label lMonH1; private Label lMonH1;
@@ -65,6 +64,17 @@ public class HelloController {
@FXML @FXML
private Label lFriD2; private Label lFriD2;
@FXML
private Label monDat;
@FXML
private Label tueDat;
@FXML
private Label wedDat;
@FXML
private Label thurDat;
@FXML
private Label friDat;
@FXML @FXML
private ImageView imgImage1; private ImageView imgImage1;
@FXML @FXML
@@ -85,8 +95,6 @@ public class HelloController {
private ImageView imgImage9; private ImageView imgImage9;
@FXML @FXML
private ImageView imgImage10; private ImageView imgImage10;
@FXML
private AnchorPane anchorPane;
@FXML @FXML
private TextField tfPhone; private TextField tfPhone;
@@ -133,6 +141,9 @@ public class HelloController {
@FXML @FXML
private RadioButton rbFriH2; private RadioButton rbFriH2;
@FXML
private ListView<String> orderList;
@FXML @FXML
final String imagePathUrl = "file:target/classes/com/example/vpr_javafx/pics/"; final String imagePathUrl = "file:target/classes/com/example/vpr_javafx/pics/";
@@ -147,6 +158,13 @@ public class HelloController {
private ArrayList<String> chosenMeals; private ArrayList<String> chosenMeals;
/**
* OnSignInButton() validates if the input of the logindata are valid when the user click on the button.
*
* @author Kevin Pfannenstiel
* @param event
* @throws IOException
*/
@FXML @FXML
protected void OnSignInButton(ActionEvent event) throws IOException protected void OnSignInButton(ActionEvent event) throws IOException
{ {
@@ -154,23 +172,51 @@ public class HelloController {
data.validateData(tfPhone, pfPassword, this); data.validateData(tfPhone, pfPassword, this);
} }
/**
* FillLabels() fills the labels with the dishes, allergenics and the dates.
*
* @author Kevin Pfannenstiel, Felix Düsterhaus
*/
@FXML @FXML
protected void FillLabels() { protected void FillLabels() {
try { try {
List<String> menu = Files.readAllLines(Paths.get("menue.txt")); List<String> menuLines = Files.readAllLines(Paths.get("menue.txt"));
for (int i = 0; i < menu.size(); i++) for (int i = 0; i < menuLines.size(); i++)
{ {
String[] parts = menu.get(i).split(";"); String[] parts = menuLines.get(i).split(";");
String dish = parts[1]; String date = parts[0];
String sideDish = parts[2]; String day = parts[1];
String typ = parts[3]; String dish = parts[2];
String allergenic = parts[4]; String sideDish = parts[3];
String typ = parts[4];
String allergenic = parts[5];
String dayMenu = dish+"\n"+sideDish+"\n"+"("+allergenic+")"; String[] allergenics = allergenic.split(",");
Menu menu = new Menu(date, dish, sideDish, typ, Arrays.stream(allergenics).toList());
String dayMenu = dish+"\n"+sideDish+"\n"+allergenic;
switch (day)
{
case "Montag":
monDat.setText(menu.getDate());
break;
case "Dienstag":
tueDat.setText(menu.getDate());
break;
case "Mittwoch":
wedDat.setText(menu.getDate());
break;
case "Donnerstag":
thurDat.setText(menu.getDate());
break;
case "Freitag":
friDat.setText(menu.getDate());
}
if(typ.equals("Fleisch")) { if(typ.equals("Fleisch")) {
imageUrl=meatImageUrl; imageUrl=meatImageUrl;
@@ -297,14 +343,14 @@ public class HelloController {
protected void ToRegistration(ActionEvent event) throws IOException protected void ToRegistration(ActionEvent event) throws IOException
{ {
Parent root = FXMLLoader.load(getClass().getResource("Registration-view.fxml")); Parent root = FXMLLoader.load(getClass().getResource("Registration-view.fxml"));
Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow(); Stage stage = new Stage();
Scene scene = new Scene(root); Scene scene = new Scene(root);
stage.setScene(scene); stage.setScene(scene);
stage.show(); stage.show();
} }
/** /**
* OnRegistrationButton() lässt einen neuen Nutzer anlegen * OnRegistrationButton() creates a new user
* @param event * @param event
* @throws IOException * @throws IOException
* @author Kevin Maier * @author Kevin Maier
@@ -313,17 +359,12 @@ public class HelloController {
protected void OnRegistrationButton(ActionEvent event) throws IOException protected void OnRegistrationButton(ActionEvent event) throws IOException
{ {
Alert alert = new Alert(Alert.AlertType.WARNING); Alert alert = new Alert(Alert.AlertType.WARNING);
Data validData = new Data("user.txt"); Data validRegistration = new Data("user.txt");
if (tfName.getText().isEmpty() || tfPhone.getText().isEmpty() || tfChild.getText().isEmpty()) if (validRegistration.validateRegistration(tfName, tfPhone, pfPassword, tfStreet, tfHouseNumber, tfPostalCode, tfCity, tfChild, this))
{ {
alert.setContentText("Registrierungsdaten unvollständig"); try (FileWriter writer = new FileWriter("user.txt", true)){
} writer.write(tfName.getText() + ";" + tfStreet.getText() + " " + tfHouseNumber.getText() + "," + tfPostalCode.getText() + " " + tfCity.getText() + ";" + tfPhone.getText() + ";" + tfChild.getText() + ";" + pfPassword.getText() + System.lineSeparator());
else if (validData.validateData(tfPhone, pfPassword, this))
{
try (FileWriter writer = new FileWriter("user.txt")){
writer.write(tfName.getText() + ";" + tfStreet.getText() + " " + tfHouseNumber.getText() + "," + tfPostalCode + " " + tfCity.getText() + ";" + tfPhone.getText() + ";" + tfChild.getText() + ";" + pfPassword.getText());
writer.flush();
} }
catch (IOException e) catch (IOException e)
{ {
@@ -332,6 +373,12 @@ public class HelloController {
} }
} }
/**
* setRadioButton() is used in the validateData() method and activates the radiobuttons in the scene, if the
* logindata are valid.
*
* @author Kevin Pfannenstiel
*/
@FXML @FXML
protected void setRadioButton() protected void setRadioButton()
{ {
@@ -364,11 +411,16 @@ public class HelloController {
rbThurH2.setVisible(true); rbThurH2.setVisible(true);
rbFriH1.setVisible(true); rbFriH1.setVisible(true);
rbFriH2.setVisible(true); rbFriH2.setVisible(true);
} }
/**
* resetSelection() sets the radiobuttons inactive.
*
* @author Kevin Pfannenstiel
* @param event
*/
@FXML @FXML
protected void resetSelection(ActionEvent event) throws IOException protected void resetSelection(ActionEvent event)
{ {
rbMonH1.setSelected(false); rbMonH1.setSelected(false);
rbMonH2.setSelected(false); rbMonH2.setSelected(false);
@@ -383,14 +435,67 @@ public class HelloController {
chosenMeals.clear(); chosenMeals.clear();
} }
/**
* toOrder() writes the orders of the user in a text-file and switches the scene to the order-menu
*
* @author Kevin Pfannenstiel
* @param event
* @throws IOException
*/
@FXML @FXML
protected ArrayList<String> getLabelValueWithRadio(ActionEvent event) protected void toOrder(ActionEvent event) throws IOException
{
try (FileWriter writer = new FileWriter("parentOrder.txt", true))
{
writer.write(getLabelValueWithRadio().toString() + System.lineSeparator());
Alert alert = new Alert(Alert.AlertType.INFORMATION);
alert.setContentText("Bestellung abgeschickt.");
Parent rootParent = FXMLLoader.load(getClass().getResource("Order-view.fxml"));
Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow();
Scene scene = new Scene(rootParent);
stage.setScene(scene);
stage.show();
ObservableList<String> orders = FXCollections.observableArrayList(getLabelValueWithRadio());
orderList = new ListView<>(orders);
StackPane rootStackPane = new StackPane();
rootStackPane.getChildren().add(orderList);
Scene scene2 = new Scene(rootStackPane);
stage.setScene(scene2);
stage.show();
}
catch (IOException e)
{
e.printStackTrace();
}
}
/**
* getLabelValueWithRadio() gets the string from the Label which is connected to the selected radiobutton
* and inserts it into a list
*
* @author Kevin Pfannenstiel
* @return
*/
@FXML
protected ArrayList<String> getLabelValueWithRadio()
{ {
chosenMeals = new ArrayList<>(); chosenMeals = new ArrayList<>();
String mainDish; String mainDish;
String dessert; String dessert;
Data data = new Data("user.txt");
for (User user : data.readUser())
{
if (tfPhone.getText().equals(user.getPhonenumber()) && pfPassword.getText().equals(user.getPassword()))
{
chosenMeals.add(user.getNameParent1()+"\n");
break;
}
}
if (rbMonH1.isSelected()) if (rbMonH1.isSelected())
{ {
mainDish = lMonH1.getText(); mainDish = lMonH1.getText();

View File

@@ -8,7 +8,6 @@ package com.example.vpr_javafx;
*/ */
public class User { public class User {
private String nameParent1; private String nameParent1;
private String nameParent2;
private String billAddress; private String billAddress;
private String phoneNumber; private String phoneNumber;
private String nameChildren; private String nameChildren;
@@ -18,16 +17,14 @@ public class User {
* constructor * constructor
* *
* @param nameParent1 name of the first parent of the child * @param nameParent1 name of the first parent of the child
* @param nameParent2 name of the second parent of the child
* @param billAddress the address the bill should be sent to * @param billAddress the address the bill should be sent to
* @param phoneNumber phonenumber of one of the parents and also the username * @param phoneNumber phonenumber of one of the parents and also the username
* @param nameChildren name of the children * @param nameChildren name of the children
* @param password password of the user * @param password password of the user
* @author Madeleine Vigier * @author Madeleine Vigier
*/ */
public User(String nameParent1, String nameParent2, String billAddress, String phoneNumber, String nameChildren, String password) { public User(String nameParent1, String billAddress, String phoneNumber, String nameChildren, String password) {
this.nameParent1 = nameParent1; this.nameParent1 = nameParent1;
this.nameParent2 = nameParent2;
this.billAddress = billAddress; this.billAddress = billAddress;
this.phoneNumber = phoneNumber; this.phoneNumber = phoneNumber;
this.nameChildren = nameChildren; this.nameChildren = nameChildren;
@@ -64,15 +61,6 @@ public class User {
return nameParent1; return nameParent1;
} }
/**
* the method getNameParent2() gets nameParent2
*
* @return nameParent2
* @author Madeleine Vigier
*/
public String getNameParent2() {
return nameParent2;
}
/** /**
* the methode toString() returns a String representation of an object * the methode toString() returns a String representation of an object
@@ -82,6 +70,6 @@ public class User {
*/ */
@Override @Override
public String toString() { public String toString() {
return nameParent1 + ";" + nameParent2 + ";" + billAddress + ";" + phoneNumber + ";" + nameChildren + ";" + password; return nameParent1 + ";" + billAddress + ";" + phoneNumber + ";" + nameChildren + ";" + password;
} }
} }

View File

@@ -7,8 +7,8 @@
<?import javafx.scene.shape.*?> <?import javafx.scene.shape.*?>
<?import javafx.scene.text.*?> <?import javafx.scene.text.*?>
<AnchorPane fx:id="anchorPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="795.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController"> <AnchorPane fx:id="anchorPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="795.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<Label layoutX="76.0" layoutY="176.0" text="Montag" textFill="#6f7baf"> <Label layoutX="97.0" layoutY="176.0" text="Montag" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font> </font>
@@ -16,7 +16,7 @@
<Insets /> <Insets />
</opaqueInsets> </opaqueInsets>
</Label> </Label>
<Label layoutX="74.0" layoutY="299.0" text="Dienstag" textFill="#6f7baf"> <Label layoutX="95.0" layoutY="299.0" text="Dienstag" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font> </font>
@@ -24,7 +24,7 @@
<Insets /> <Insets />
</opaqueInsets> </opaqueInsets>
</Label> </Label>
<Label layoutX="72.0" layoutY="422.0" text="Mittwoch" textFill="#6f7baf"> <Label layoutX="93.0" layoutY="422.0" text="Mittwoch" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font> </font>
@@ -32,7 +32,7 @@
<Insets /> <Insets />
</opaqueInsets> </opaqueInsets>
</Label> </Label>
<Label layoutX="63.0" layoutY="543.0" text="Donnerstag" textFill="#6f7baf"> <Label layoutX="84.0" layoutY="543.0" text="Donnerstag" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font> </font>
@@ -40,7 +40,7 @@
<Insets /> <Insets />
</opaqueInsets> </opaqueInsets>
</Label> </Label>
<Label layoutX="79.0" layoutY="664.0" text="Freitag" textFill="#6f7baf"> <Label layoutX="100.0" layoutY="664.0" text="Freitag" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font> </font>
@@ -70,56 +70,56 @@
</font></Label> </font></Label>
<PasswordField fx:id="pfPassword" style="-fx-background-color: #f0c8cb;" /> <PasswordField fx:id="pfPassword" style="-fx-background-color: #f0c8cb;" />
<Button mnemonicParsing="false" onAction="#OnSignInButton" style="-fx-background-color: #c7d0f0;" text="anmelden" textFill="WHITE" /> <Button mnemonicParsing="false" onAction="#OnSignInButton" style="-fx-background-color: #c7d0f0;" text="anmelden" textFill="WHITE" />
<Button onAction="#ToRegistration" style="-fx-background-color: #c7d0f0;" textFill="WHITE" mnemonicParsing="false" text="registrieren" /> <Button mnemonicParsing="false" onAction="#ToRegistration" style="-fx-background-color: #c7d0f0;" text="registrieren" textFill="WHITE" />
</items> </items>
</ToolBar> </ToolBar>
<Line endX="100.0" layoutX="245.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="266.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="266.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="266.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="266.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="266.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="581.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="581.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="581.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="581.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="581.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Label fx:id="lMonH1" layoutX="148.0" layoutY="132.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf"> <Label fx:id="lMonH1" layoutX="169.0" layoutY="132.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lMonH2" layoutX="148.0" layoutY="188.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf"> <Label fx:id="lMonH2" layoutX="169.0" layoutY="188.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lTueH1" layoutX="148.0" layoutY="255.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lTueH1" layoutX="169.0" layoutY="255.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lTueH2" layoutX="148.0" layoutY="311.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lTueH2" layoutX="169.0" layoutY="311.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lWednH1" layoutX="148.0" layoutY="378.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lWednH1" layoutX="169.0" layoutY="378.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lWednH2" layoutX="148.0" layoutY="434.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lWednH2" layoutX="169.0" layoutY="434.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lThurH1" layoutX="148.0" layoutY="501.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lThurH1" layoutX="169.0" layoutY="501.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lThurH2" layoutX="148.0" layoutY="555.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lThurH2" layoutX="169.0" layoutY="555.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lFriH1" layoutX="148.0" layoutY="621.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lFriH1" layoutX="169.0" layoutY="621.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lFriH2" layoutX="148.0" layoutY="676.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lFriH2" layoutX="169.0" layoutY="676.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
@@ -163,7 +163,7 @@
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Line endX="-99.99999237060547" endY="390.5999755859375" layoutX="243.0" layoutY="352.0" startX="-99.99998474121094" startY="-223.20001220703125" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="-99.99999237060547" endY="390.5999755859375" layoutX="264.0" layoutY="350.0" startX="-99.99998474121094" startY="-223.20001220703125" stroke="#746fa6" strokeWidth="3.0" />
<ImageView fitHeight="107.0" fitWidth="138.0" layoutX="820.0" layoutY="9.0" pickOnBounds="true" preserveRatio="true"> <ImageView fitHeight="107.0" fitWidth="138.0" layoutX="820.0" layoutY="9.0" pickOnBounds="true" preserveRatio="true">
<image> <image>
<Image url="@pics/logo.png" /> <Image url="@pics/logo.png" />
@@ -200,26 +200,66 @@
</font> </font>
</Label> </Label>
<Label fx:id="allergene" layoutX="780.0" layoutY="362.0" prefHeight="183.0" prefWidth="192.0" /> <Label fx:id="allergene" layoutX="780.0" layoutY="362.0" prefHeight="183.0" prefWidth="192.0" />
<ImageView fx:id="imgImage1" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="146.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage1" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="140.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage2" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="195.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage2" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="196.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage3" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="271.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage3" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="265.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage4" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="318.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage4" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="319.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage5" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="392.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage5" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="386.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage6" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="439.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage6" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="440.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage7" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="515.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage7" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="509.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage8" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="559.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage8" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="560.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage9" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="635.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage9" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="629.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage10" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="680.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage10" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="681.0" pickOnBounds="true" preserveRatio="true" />
<Button fx:id="btResetSelection" layoutX="779.0" layoutY="622.0" mnemonicParsing="false" onAction="#resetSelection" text="Auswahl aufheben" visible="false" /> <Button fx:id="btResetSelection" layoutX="779.0" layoutY="622.0" mnemonicParsing="false" onAction="#resetSelection" text="Auswahl aufheben" visible="false" />
<Button fx:id="btToOrder" layoutX="779.0" layoutY="675.0" mnemonicParsing="false" prefHeight="26.0" prefWidth="114.0" text="Bestellen" visible="false" /> <Button fx:id="btToOrder" layoutX="779.0" layoutY="675.0" mnemonicParsing="false" onAction="#toOrder" prefHeight="26.0" prefWidth="114.0" text="Bestellen" visible="false" />
<RadioButton fx:id="rbMonH1" layoutX="359.0" layoutY="159.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbMonH1" layoutX="377.0" layoutY="159.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbMonH2" layoutX="359.0" layoutY="201.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbMonH2" layoutX="377.0" layoutY="206.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbTueH1" layoutX="360.0" layoutY="278.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbTueH1" layoutX="377.0" layoutY="277.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbTueH2" layoutX="361.0" layoutY="325.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbTueH2" layoutX="377.0" layoutY="324.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbWednH1" layoutX="360.0" layoutY="405.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbWednH1" layoutX="377.0" layoutY="398.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbWednH2" layoutX="359.0" layoutY="445.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbWednH2" layoutX="377.0" layoutY="445.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbThurH1" layoutX="360.0" layoutY="528.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbThurH1" layoutX="377.0" layoutY="521.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbThurH2" layoutX="360.0" layoutY="566.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbThurH2" layoutX="377.0" layoutY="565.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbFriH1" layoutX="360.0" layoutY="650.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbFriH1" layoutX="377.0" layoutY="648.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbFriH2" layoutX="360.0" layoutY="687.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbFriH2" layoutX="377.0" layoutY="692.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<Label fx:id="monDat" layoutX="14.0" layoutY="176.0" text="30.01.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="tueDat" layoutX="14.0" layoutY="299.0" text="31.01.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="wedDat" layoutX="14.0" layoutY="424.0" text="01.02.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="thurDat" layoutX="14.0" layoutY="543.0" text="02.02.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="friDat" layoutX="14.0" layoutY="664.0" text="03.02.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
</AnchorPane> </AnchorPane>

View File

@@ -6,7 +6,7 @@
<?import javafx.scene.shape.*?> <?import javafx.scene.shape.*?>
<?import javafx.scene.text.*?> <?import javafx.scene.text.*?>
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController"> <AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<Label layoutX="27.0" layoutY="160.0" style="-fx-font-weight: bold; -fx-font-family: century gothic; -fx-font-size: 14; -fx-text-fill: #746FA6;" text="Montag" textFill="BLUE"> <Label layoutX="27.0" layoutY="160.0" style="-fx-font-weight: bold; -fx-font-family: century gothic; -fx-font-size: 14; -fx-text-fill: #746FA6;" text="Montag" textFill="BLUE">
<font> <font>
<Font name="Century Gothic" size="13.0" /> <Font name="Century Gothic" size="13.0" />

View File

@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<children>
<GridPane layoutX="81.0" layoutY="50.0" prefHeight="272.0" prefWidth="496.0">
<columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" maxWidth="455.6" minWidth="10.0" prefWidth="394.8" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="430.0" minWidth="0.0" prefWidth="12.0" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="210.0" minWidth="0.0" prefWidth="90.0" />
</columnConstraints>
<rowConstraints>
<RowConstraints maxHeight="271.20000000000005" minHeight="10.0" prefHeight="202.0" vgrow="SOMETIMES" />
<RowConstraints maxHeight="271.20000000000005" minHeight="10.0" prefHeight="54.39999999999998" vgrow="SOMETIMES" />
<RowConstraints maxHeight="90.39999999999998" minHeight="0.0" prefHeight="0.0" vgrow="SOMETIMES" />
<RowConstraints maxHeight="51.39999999999998" minHeight="0.0" prefHeight="0.0" vgrow="SOMETIMES" />
</rowConstraints>
<children>
<ListView fx:id="orderList" prefHeight="229.0" prefWidth="410.0" GridPane.rowSpan="2" />
<Button mnemonicParsing="false" onAction="#removeFromOrder" prefHeight="26.0" prefWidth="89.0" text="stornieren" GridPane.columnIndex="2" />
<Button mnemonicParsing="false" prefHeight="26.0" prefWidth="90.0" text="bestellen" GridPane.columnIndex="2" GridPane.rowIndex="1" />
</children>
</GridPane>
<Button layoutX="16.0" layoutY="353.0" mnemonicParsing="false" text="zurück" />
<Label layoutX="239.0" layoutY="22.0" text="Stornier-Menü" />
</children>
</AnchorPane>

View File

@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<?import javafx.geometry.*?>
<?import javafx.scene.control.*?> <?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?> <?import javafx.scene.layout.*?>
<?import javafx.scene.text.*?>
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController"> <AnchorPane prefHeight="400.0" prefWidth="600.0" style="-fx-background-color: #F0C8BD;" xmlns="http://javafx.com/javafx/11.0.2" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<children> <children>
<GridPane layoutX="50.0" layoutY="62.0" prefHeight="275.0" prefWidth="500.0"> <GridPane layoutX="50.0" layoutY="62.0" prefHeight="275.0" prefWidth="500.0" style="-fx-background-color: #F0C8BD;">
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" maxWidth="153.0" minWidth="10.0" prefWidth="85.0" /> <ColumnConstraints hgrow="SOMETIMES" maxWidth="153.0" minWidth="10.0" prefWidth="85.0" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="261.0" minWidth="10.0" prefWidth="200.0" /> <ColumnConstraints hgrow="SOMETIMES" maxWidth="261.0" minWidth="10.0" prefWidth="200.0" />
@@ -23,22 +23,70 @@
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
</rowConstraints> </rowConstraints>
<children> <children>
<Label text="Name" /> <Label text="Name:" textFill="#746fa6">
<Label text="Handynummer" GridPane.rowIndex="1" /> <font>
<Label prefWidth="95.0" text="Passwort: " GridPane.rowIndex="2" /> <Font name="Century Gothic Bold" size="12.0" />
<Label text="Kind:" GridPane.rowIndex="5" /> </font></Label>
<Label text="Straße" GridPane.rowIndex="3" /> <Label text="Handynummer:" textFill="#746fa6" GridPane.rowIndex="1">
<Label text="Ort" GridPane.rowIndex="4" /> <font>
<Button mnemonicParsing="false" onAction="#OnRegistrationButton" prefHeight="26.0" prefWidth="90.0" text="Abschicken" translateX="100.0" GridPane.columnIndex="1" GridPane.rowIndex="7" /> <Font name="Century Gothic Bold" size="12.0" />
<PasswordField fx:id="pfPassword" promptText="Passwort" GridPane.columnIndex="1" GridPane.rowIndex="2" /> </font></Label>
<TextField fx:id="tfName" promptText="Voller Name" GridPane.columnIndex="1" /> <Label prefWidth="95.0" text="Passwort: " textFill="#746fa6" GridPane.rowIndex="2">
<TextField fx:id="tfPhone" promptText="Handynummer" GridPane.columnIndex="1" GridPane.rowIndex="1" /> <font>
<TextField fx:id="tfChild" promptText="Kind" GridPane.columnIndex="1" GridPane.rowIndex="5" /> <Font name="Century Gothic Bold" size="12.0" />
<TextField GridPane.columnIndex="1" GridPane.rowIndex="4" /> </font></Label>
<TextField fx:id="tfStreet" prefWidth="254.0" promptText="Straße" GridPane.columnIndex="1" GridPane.rowIndex="3" /> <Label text="Kind:" textFill="#746fa6" GridPane.rowIndex="5">
<TextField fx:id="tfHouseNumber" prefWidth="123.0" promptText="Hausnummer" GridPane.columnIndex="2" GridPane.rowIndex="3"/> <font>
<TextField fx:id="tfPostalCode" promptText="Postleitzahl" GridPane.columnIndex="1" GridPane.rowIndex="4" /> <Font name="Century Gothic Bold" size="12.0" />
<TextField fx:id="tfCity" promptText="Ort" GridPane.columnIndex="2" GridPane.rowIndex="4" /> </font></Label>
<Label text="Straße:" textFill="#746fa6" GridPane.rowIndex="3">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label text="Ort:" textFill="#746fa6" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Button mnemonicParsing="false" onAction="#OnRegistrationButton" prefHeight="26.0" prefWidth="90.0" style="-fx-background-color: #CBC7F0; -fx-border-color: #746FA6;" text="Abschicken" textFill="WHITE" translateX="100.0" GridPane.columnIndex="1" GridPane.rowIndex="7">
<font>
<Font name="Century Gothic" size="12.0" />
</font></Button>
<PasswordField fx:id="pfPassword" promptText="Passwort" GridPane.columnIndex="1" GridPane.rowIndex="2">
<font>
<Font name="Century Gothic" size="12.0" />
</font></PasswordField>
<TextField fx:id="tfName" promptText="Voller Name" GridPane.columnIndex="1">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfPhone" promptText="Handynummer" GridPane.columnIndex="1" GridPane.rowIndex="1">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfChild" promptText="Kind" GridPane.columnIndex="1" GridPane.rowIndex="5">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField GridPane.columnIndex="1" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfStreet" prefWidth="254.0" promptText="Straße" GridPane.columnIndex="1" GridPane.rowIndex="3">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfHouseNumber" prefWidth="123.0" promptText="Hausnummer" GridPane.columnIndex="2" GridPane.rowIndex="3">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfPostalCode" promptText="Postleitzahl" GridPane.columnIndex="1" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfCity" promptText="Ort" GridPane.columnIndex="2" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
</children> </children>
</GridPane> </GridPane>

View File

@@ -12,7 +12,7 @@
<?import javafx.scene.shape.Line?> <?import javafx.scene.shape.Line?>
<?import javafx.scene.text.Font?> <?import javafx.scene.text.Font?>
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="742.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/19" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController"> <AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="742.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/19" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<Label layoutX="76.0" layoutY="176.0" text="Montag" textFill="#6f7baf"> <Label layoutX="76.0" layoutY="176.0" text="Montag" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController">
<children>
<Button fx:id="btDeleteSelection" layoutX="457.0" layoutY="264.0" mnemonicParsing="false" text="Löschen" />
<Button fx:id="btToMenu" onAction="#ToMenu" layoutX="461.0" layoutY="305.0" mnemonicParsing="false" visible="false" text="Zurück" />
<ListView fx:id="listViewDelete" layoutX="200.0" layoutY="89.0" prefHeight="200.0" prefWidth="200.0" />
</children>
</AnchorPane>

View File

@@ -7,8 +7,8 @@
<?import javafx.scene.shape.*?> <?import javafx.scene.shape.*?>
<?import javafx.scene.text.*?> <?import javafx.scene.text.*?>
<AnchorPane fx:id="anchorPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="795.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController"> <AnchorPane fx:id="anchorPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="795.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<Label layoutX="76.0" layoutY="176.0" text="Montag" textFill="#6f7baf"> <Label layoutX="97.0" layoutY="176.0" text="Montag" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font> </font>
@@ -16,7 +16,7 @@
<Insets /> <Insets />
</opaqueInsets> </opaqueInsets>
</Label> </Label>
<Label layoutX="74.0" layoutY="299.0" text="Dienstag" textFill="#6f7baf"> <Label layoutX="95.0" layoutY="299.0" text="Dienstag" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font> </font>
@@ -24,7 +24,7 @@
<Insets /> <Insets />
</opaqueInsets> </opaqueInsets>
</Label> </Label>
<Label layoutX="72.0" layoutY="422.0" text="Mittwoch" textFill="#6f7baf"> <Label layoutX="93.0" layoutY="422.0" text="Mittwoch" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font> </font>
@@ -32,7 +32,7 @@
<Insets /> <Insets />
</opaqueInsets> </opaqueInsets>
</Label> </Label>
<Label layoutX="63.0" layoutY="543.0" text="Donnerstag" textFill="#6f7baf"> <Label layoutX="84.0" layoutY="543.0" text="Donnerstag" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font> </font>
@@ -40,7 +40,7 @@
<Insets /> <Insets />
</opaqueInsets> </opaqueInsets>
</Label> </Label>
<Label layoutX="79.0" layoutY="664.0" text="Freitag" textFill="#6f7baf"> <Label layoutX="100.0" layoutY="664.0" text="Freitag" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font> </font>
@@ -70,56 +70,56 @@
</font></Label> </font></Label>
<PasswordField fx:id="pfPassword" style="-fx-background-color: #f0c8cb;" /> <PasswordField fx:id="pfPassword" style="-fx-background-color: #f0c8cb;" />
<Button mnemonicParsing="false" onAction="#OnSignInButton" style="-fx-background-color: #c7d0f0;" text="anmelden" textFill="WHITE" /> <Button mnemonicParsing="false" onAction="#OnSignInButton" style="-fx-background-color: #c7d0f0;" text="anmelden" textFill="WHITE" />
<Button onAction="#ToRegistration" style="-fx-background-color: #c7d0f0;" textFill="WHITE" mnemonicParsing="false" text="registrieren" /> <Button mnemonicParsing="false" onAction="#ToRegistration" style="-fx-background-color: #c7d0f0;" text="registrieren" textFill="WHITE" />
</items> </items>
</ToolBar> </ToolBar>
<Line endX="100.0" layoutX="245.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="266.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="266.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="266.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="266.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="266.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="581.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="581.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="581.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="581.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="100.0" layoutX="581.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Label fx:id="lMonH1" layoutX="148.0" layoutY="132.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf"> <Label fx:id="lMonH1" layoutX="169.0" layoutY="132.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lMonH2" layoutX="148.0" layoutY="188.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf"> <Label fx:id="lMonH2" layoutX="169.0" layoutY="188.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lTueH1" layoutX="148.0" layoutY="255.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lTueH1" layoutX="169.0" layoutY="255.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lTueH2" layoutX="148.0" layoutY="311.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lTueH2" layoutX="169.0" layoutY="311.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lWednH1" layoutX="148.0" layoutY="378.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lWednH1" layoutX="169.0" layoutY="378.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lWednH2" layoutX="148.0" layoutY="434.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lWednH2" layoutX="169.0" layoutY="434.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lThurH1" layoutX="148.0" layoutY="501.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lThurH1" layoutX="169.0" layoutY="501.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lThurH2" layoutX="148.0" layoutY="555.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lThurH2" layoutX="169.0" layoutY="555.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lFriH1" layoutX="148.0" layoutY="621.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lFriH1" layoutX="169.0" layoutY="621.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Label fx:id="lFriH2" layoutX="148.0" layoutY="676.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf"> <Label fx:id="lFriH2" layoutX="169.0" layoutY="676.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
@@ -163,7 +163,7 @@
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />
</font></Label> </font></Label>
<Line endX="-99.99999237060547" endY="390.5999755859375" layoutX="243.0" layoutY="352.0" startX="-99.99998474121094" startY="-223.20001220703125" stroke="#746fa6" strokeWidth="3.0" /> <Line endX="-99.99999237060547" endY="390.5999755859375" layoutX="264.0" layoutY="350.0" startX="-99.99998474121094" startY="-223.20001220703125" stroke="#746fa6" strokeWidth="3.0" />
<ImageView fitHeight="107.0" fitWidth="138.0" layoutX="820.0" layoutY="9.0" pickOnBounds="true" preserveRatio="true"> <ImageView fitHeight="107.0" fitWidth="138.0" layoutX="820.0" layoutY="9.0" pickOnBounds="true" preserveRatio="true">
<image> <image>
<Image url="@pics/logo.png" /> <Image url="@pics/logo.png" />
@@ -200,26 +200,66 @@
</font> </font>
</Label> </Label>
<Label fx:id="allergene" layoutX="780.0" layoutY="362.0" prefHeight="183.0" prefWidth="192.0" /> <Label fx:id="allergene" layoutX="780.0" layoutY="362.0" prefHeight="183.0" prefWidth="192.0" />
<ImageView fx:id="imgImage1" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="146.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage1" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="140.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage2" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="195.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage2" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="196.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage3" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="271.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage3" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="265.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage4" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="318.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage4" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="319.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage5" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="392.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage5" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="386.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage6" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="439.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage6" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="440.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage7" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="515.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage7" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="509.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage8" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="559.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage8" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="560.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage9" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="635.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage9" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="629.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage10" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="680.0" pickOnBounds="true" preserveRatio="true" /> <ImageView fx:id="imgImage10" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="681.0" pickOnBounds="true" preserveRatio="true" />
<Button fx:id="btResetSelection" layoutX="779.0" layoutY="622.0" mnemonicParsing="false" onAction="#resetSelection" text="Auswahl aufheben" visible="false" /> <Button fx:id="btResetSelection" layoutX="779.0" layoutY="622.0" mnemonicParsing="false" onAction="#resetSelection" text="Auswahl aufheben" visible="false" />
<Button fx:id="btToOrder" layoutX="779.0" layoutY="675.0" mnemonicParsing="false" prefHeight="26.0" prefWidth="114.0" text="Bestellen" visible="false" /> <Button fx:id="btToOrder" layoutX="779.0" layoutY="675.0" mnemonicParsing="false" onAction="#toOrder" prefHeight="26.0" prefWidth="114.0" text="Bestellen" visible="false" />
<RadioButton fx:id="rbMonH1" layoutX="359.0" layoutY="159.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbMonH1" layoutX="377.0" layoutY="159.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbMonH2" layoutX="359.0" layoutY="201.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbMonH2" layoutX="377.0" layoutY="206.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbTueH1" layoutX="360.0" layoutY="278.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbTueH1" layoutX="377.0" layoutY="277.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbTueH2" layoutX="361.0" layoutY="325.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbTueH2" layoutX="377.0" layoutY="324.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbWednH1" layoutX="360.0" layoutY="405.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbWednH1" layoutX="377.0" layoutY="398.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbWednH2" layoutX="359.0" layoutY="445.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbWednH2" layoutX="377.0" layoutY="445.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbThurH1" layoutX="360.0" layoutY="528.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbThurH1" layoutX="377.0" layoutY="521.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbThurH2" layoutX="360.0" layoutY="566.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbThurH2" layoutX="377.0" layoutY="565.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbFriH1" layoutX="360.0" layoutY="650.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbFriH1" layoutX="377.0" layoutY="648.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbFriH2" layoutX="360.0" layoutY="687.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" /> <RadioButton fx:id="rbFriH2" layoutX="377.0" layoutY="692.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<Label fx:id="monDat" layoutX="14.0" layoutY="176.0" text="30.01.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="tueDat" layoutX="14.0" layoutY="299.0" text="31.01.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="wedDat" layoutX="14.0" layoutY="424.0" text="01.02.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="thurDat" layoutX="14.0" layoutY="543.0" text="02.02.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="friDat" layoutX="14.0" layoutY="664.0" text="03.02.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
</AnchorPane> </AnchorPane>

View File

@@ -6,7 +6,7 @@
<?import javafx.scene.shape.*?> <?import javafx.scene.shape.*?>
<?import javafx.scene.text.*?> <?import javafx.scene.text.*?>
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController"> <AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<Label layoutX="27.0" layoutY="160.0" style="-fx-font-weight: bold; -fx-font-family: century gothic; -fx-font-size: 14; -fx-text-fill: #746FA6;" text="Montag" textFill="BLUE"> <Label layoutX="27.0" layoutY="160.0" style="-fx-font-weight: bold; -fx-font-family: century gothic; -fx-font-size: 14; -fx-text-fill: #746FA6;" text="Montag" textFill="BLUE">
<font> <font>
<Font name="Century Gothic" size="13.0" /> <Font name="Century Gothic" size="13.0" />

View File

@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<children>
<GridPane layoutX="81.0" layoutY="50.0" prefHeight="272.0" prefWidth="496.0">
<columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" maxWidth="455.6" minWidth="10.0" prefWidth="394.8" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="430.0" minWidth="0.0" prefWidth="12.0" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="210.0" minWidth="0.0" prefWidth="90.0" />
</columnConstraints>
<rowConstraints>
<RowConstraints maxHeight="271.20000000000005" minHeight="10.0" prefHeight="202.0" vgrow="SOMETIMES" />
<RowConstraints maxHeight="271.20000000000005" minHeight="10.0" prefHeight="54.39999999999998" vgrow="SOMETIMES" />
<RowConstraints maxHeight="90.39999999999998" minHeight="0.0" prefHeight="0.0" vgrow="SOMETIMES" />
<RowConstraints maxHeight="51.39999999999998" minHeight="0.0" prefHeight="0.0" vgrow="SOMETIMES" />
</rowConstraints>
<children>
<ListView fx:id="orderList" prefHeight="229.0" prefWidth="410.0" GridPane.rowSpan="2" />
<Button mnemonicParsing="false" onAction="#removeFromOrder" prefHeight="26.0" prefWidth="89.0" text="stornieren" GridPane.columnIndex="2" />
<Button mnemonicParsing="false" prefHeight="26.0" prefWidth="90.0" text="bestellen" GridPane.columnIndex="2" GridPane.rowIndex="1" />
</children>
</GridPane>
<Button layoutX="16.0" layoutY="353.0" mnemonicParsing="false" text="zurück" />
<Label layoutX="239.0" layoutY="22.0" text="Stornier-Menü" />
</children>
</AnchorPane>

View File

@@ -2,13 +2,15 @@
<?import javafx.scene.control.*?> <?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?> <?import javafx.scene.layout.*?>
<?import javafx.scene.text.*?>
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController"> <AnchorPane prefHeight="400.0" prefWidth="600.0" style="-fx-background-color: #F0C8BD;" xmlns="http://javafx.com/javafx/11.0.2" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<children> <children>
<GridPane layoutX="100.0" layoutY="75.0" prefHeight="250.0" prefWidth="400.0"> <GridPane layoutX="50.0" layoutY="62.0" prefHeight="275.0" prefWidth="500.0" style="-fx-background-color: #F0C8BD;">
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" maxWidth="153.0" minWidth="10.0" prefWidth="89.8" /> <ColumnConstraints hgrow="SOMETIMES" maxWidth="153.0" minWidth="10.0" prefWidth="85.0" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="261.0" minWidth="10.0" prefWidth="226.2" /> <ColumnConstraints hgrow="SOMETIMES" maxWidth="261.0" minWidth="10.0" prefWidth="200.0" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="261.0" minWidth="10.0" prefWidth="200.0" />
</columnConstraints> </columnConstraints>
<rowConstraints> <rowConstraints>
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
@@ -17,18 +19,76 @@
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
</rowConstraints> </rowConstraints>
<children> <children>
<Label text="Voller Name: " /> <Label text="Name:" textFill="#746fa6">
<Label text="Handynummer: " GridPane.rowIndex="1" /> <font>
<Label prefWidth="95.0" text="Passwort: " GridPane.rowIndex="2" /> <Font name="Century Gothic Bold" size="12.0" />
<Label text="Kind: " GridPane.rowIndex="3" /> </font></Label>
<Button mnemonicParsing="false" onAction="#OnRegistrationButton" prefHeight="26.0" prefWidth="90.0" text="Abschicken" translateX="100.0" GridPane.columnIndex="1" GridPane.rowIndex="5" /> <Label text="Handynummer:" textFill="#746fa6" GridPane.rowIndex="1">
<PasswordField fx:id="pfPassword" GridPane.columnIndex="1" GridPane.rowIndex="2" /> <font>
<TextField fx:id="tfName" GridPane.columnIndex="1" /> <Font name="Century Gothic Bold" size="12.0" />
<TextField fx:id="tfPhone" GridPane.columnIndex="1" GridPane.rowIndex="1" /> </font></Label>
<TextField fx:id="tfChild" GridPane.columnIndex="1" GridPane.rowIndex="3" /> <Label prefWidth="95.0" text="Passwort: " textFill="#746fa6" GridPane.rowIndex="2">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label text="Kind:" textFill="#746fa6" GridPane.rowIndex="5">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label text="Straße:" textFill="#746fa6" GridPane.rowIndex="3">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label text="Ort:" textFill="#746fa6" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Button mnemonicParsing="false" onAction="#OnRegistrationButton" prefHeight="26.0" prefWidth="90.0" style="-fx-background-color: #CBC7F0; -fx-border-color: #746FA6;" text="Abschicken" textFill="WHITE" translateX="100.0" GridPane.columnIndex="1" GridPane.rowIndex="7">
<font>
<Font name="Century Gothic" size="12.0" />
</font></Button>
<PasswordField fx:id="pfPassword" promptText="Passwort" GridPane.columnIndex="1" GridPane.rowIndex="2">
<font>
<Font name="Century Gothic" size="12.0" />
</font></PasswordField>
<TextField fx:id="tfName" promptText="Voller Name" GridPane.columnIndex="1">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfPhone" promptText="Handynummer" GridPane.columnIndex="1" GridPane.rowIndex="1">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfChild" promptText="Kind" GridPane.columnIndex="1" GridPane.rowIndex="5">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField GridPane.columnIndex="1" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfStreet" prefWidth="254.0" promptText="Straße" GridPane.columnIndex="1" GridPane.rowIndex="3">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfHouseNumber" prefWidth="123.0" promptText="Hausnummer" GridPane.columnIndex="2" GridPane.rowIndex="3">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfPostalCode" promptText="Postleitzahl" GridPane.columnIndex="1" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfCity" promptText="Ort" GridPane.columnIndex="2" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
</children> </children>
</GridPane> </GridPane>
</children> </children>
</AnchorPane> </AnchorPane>

View File

@@ -12,7 +12,7 @@
<?import javafx.scene.shape.Line?> <?import javafx.scene.shape.Line?>
<?import javafx.scene.text.Font?> <?import javafx.scene.text.Font?>
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="742.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/19" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController"> <AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="742.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/19" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<Label layoutX="76.0" layoutY="176.0" text="Montag" textFill="#6f7baf"> <Label layoutX="76.0" layoutY="176.0" text="Montag" textFill="#6f7baf">
<font> <font>
<Font name="Century Gothic Bold" size="13.0" /> <Font name="Century Gothic Bold" size="13.0" />

View File

@@ -1,2 +1,3 @@
Felix Düsterhaus;Sabine Gubitz;Detmolderstrasse 101,33102 Paderborn;1234567;Lisa,Peter;12345678A Felix Düsterhaus;Detmolderstrasse 101,33102 Paderborn;1234567;Lisa;12345678A
Kevin Pfannenstiel;Marlene Pfannenstiel;Fürstenallee 30, 33102 Paderborn;7654321;Anton;12345678B Kevin Pfannenstiel;Fürstenallee 30, 33102 Paderborn;7654321;Anton;12345678B
Max Muster;Fürstenallee 5,33102 Paderborn;123456789;Klaus Muster;12345abc