package sample; import javafx.application.Application; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.geometry.Insets; import javafx.geometry.Pos; import javafx.scene.Scene; import javafx.scene.control.*; import javafx.scene.effect.DropShadow; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.scene.input.MouseEvent; import javafx.scene.layout.*; import javafx.scene.paint.Color; import javafx.scene.shape.Circle; import javafx.scene.shape.Rectangle; import javafx.scene.text.Font; import javafx.scene.text.Text; import javafx.scene.text.TextAlignment; import javafx.stage.Stage; import java.sql.*; public class Main extends Application { // Datenbankkonstanten // Datenbankname public static final String db_name = "freunde.db"; // Tabellenname public static final String table_freunde = "freunde"; // Connectionpfad public static final String connection_string = "jdbc:sqlite:.\\" + db_name; // Freund in Datenbank hinzufügen private static void createFreund(Statement statement, String vorname, String nachname, String geburtstag, String wohnort, String spitzname, String lieblingsfarbe, String lieblingsessen, String lieblingstier, String hobbys, String lieblingsmusik, String lieblingsfilm, String traumauto, String traumberuf, String likeYou, String tellMe) throws SQLException { statement.execute("INSERT INTO " + table_freunde + " VALUES " + "('" + vorname + "', '" + nachname + "', '" + geburtstag + "', '" + wohnort + "', '" + spitzname + "', '" + lieblingsfarbe + "', '" + lieblingsessen + "', '" + lieblingstier + "', '" + hobbys + "', '" + lieblingsmusik + "', '" + lieblingsfilm + "', '" + traumauto + "', '" + traumberuf + "', '" + likeYou + "', '" + tellMe + "')"); } @Override public void start(Stage primaryStage) throws Exception{ // Datenbank Connection ------------------------------------------------------------------------------------------------------------------------ // Connection aufbauen Connection connection = DriverManager.getConnection(connection_string); // CRUD Befehle ausführen können Statement statement = connection.createStatement(); // Layout / Scene ------------------------------------------------------------------------------------------------------------------------------ VBox root = new VBox(); Scene scene = new Scene(root, 300,400); scene.getStylesheets().add("sample/application.css"); root.setSpacing(15.0); // Titel primaryStage.setTitle("Freundebuch"); // Shadow DropShadow shadow = new DropShadow(); // Label Label labelMenue = new Label ("Mein digitales\nFreundebuch"); // Label designen labelMenue.setPadding(new Insets(10)); labelMenue.setTextAlignment(TextAlignment.CENTER); labelMenue.setFont(new Font("Comic Sans MS", 30)); // Button Button freundeAnzeigen = new Button("Freunde zeigen"); Button freundeHinzufuegen = new Button("Freunde hinzufügen"); Button freundeSuchen = new Button("Freunde suchen"); // Button designen freundeAnzeigen.setPadding(new Insets(10)); freundeHinzufuegen.setPadding(new Insets(10)); freundeSuchen.setPadding(new Insets(10)); freundeAnzeigen.setMinSize(150.0, 50.0); freundeHinzufuegen.setMinSize(150.0, 50.0); freundeSuchen.setMinSize(150.0, 50.0); freundeAnzeigen.setFont(Font.font("Comic Sans MS")); freundeHinzufuegen.setFont(Font.font("Comic Sans MS")); freundeSuchen.setFont(Font.font("Comic Sans MS")); // --------------------------------------------------------------------------------------------------------------------------------------------- // Freunde Anzeigen Button freundeAnzeigen.setOnMouseEntered(new EventHandler() { @Override public void handle(MouseEvent event) { freundeAnzeigen.setEffect(shadow); } }); freundeAnzeigen.setOnMouseExited(new EventHandler() { @Override public void handle(MouseEvent event) { freundeAnzeigen.setEffect(null); } }); freundeAnzeigen.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { // Layout / Scene StackPane rahmen = new StackPane(); rahmen.setStyle("-fx-background-color: white;"); HBox root3 = new HBox(); Scene scene3 = new Scene(rahmen, 800,500); VBox seiteLinks = new VBox(); VBox seiteRechts = new VBox(); seiteLinks.setStyle("-fx-background-color: transparent;"); seiteRechts.setStyle("-fx-background-color: transparent;"); // Rahmen ############################################################ // Rechteck Rectangle rand = new Rectangle(); rand.setHeight(950); rand.setWidth(1650); rand.setFill(Color.TRANSPARENT); rand.setStroke(Color.WHITE); rand.setStrokeWidth(5); // Seite Links ############################################################ // Image Image img = new Image("sample/bildIcon.jpg"); ImageView view = new ImageView(img); view.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { // File Chooser } }); // Rechteck Rectangle viereck = new Rectangle(); viereck.setHeight(250); viereck.setWidth(200); viereck.setFill(Color.TRANSPARENT); viereck.setStroke(Color.BLACK); viereck.setStrokeWidth(5); // StackPane StackPane stackPane = new StackPane(); // In StackPane hinzufügen stackPane.getChildren().addAll(viereck, view); stackPane.setMaxHeight(250); stackPane.setMaxWidth(200); // VBoxen VBox grundedatenRechts = new VBox(); // HBoxen HBox grunddaten = new HBox(); HBox vornameBox = new HBox(); HBox nachnameBox = new HBox(); HBox geburtstagBox = new HBox(); HBox wohnortBox = new HBox(); HBox spitznameBox = new HBox(); HBox lieblingsfarbeBox = new HBox(); HBox lieblingsessenBox = new HBox(); HBox lieblingstierBox = new HBox(); HBox hobbysBox = new HBox(); // Circle HBox kreisPosi = new HBox(); Circle circle = new Circle(); circle.setRadius(20); circle.setFill(Color.BLUE); kreisPosi.getChildren().add(circle); // Button Effekte view.setOnMouseEntered(new EventHandler() { @Override public void handle(MouseEvent event) { view.setEffect(shadow); } }); view.setOnMouseExited(new EventHandler() { @Override public void handle(MouseEvent event) { view.setEffect(null); } }); // Button Klick view.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { // Hier soll sich ein Dateiauswahlfenster öffnen wo das Bild ausgewählt werden kann } }); // Label Label vornameLabel = new Label("Vorname"); Label nachnameLabel = new Label("Nachname"); Label geburtstagLabel = new Label("Geburtstag"); Label wohnortLabel = new Label("Wohnort"); Label spitznameLabel = new Label("Spitzname"); Label lieblingsfarbeLabel = new Label("Lieblingsfarbe"); Label lieblingsessenLabel = new Label("Lieblingsessen"); Label lieblingstierLabel = new Label("Lieblingstier"); Label hobbysLabel = new Label("Hobbys"); // Label Positionierung vornameLabel.setPadding(new Insets(0, 69, 0, 0)); nachnameLabel.setPadding(new Insets(0, 54, 0, 0)); geburtstagLabel.setPadding(new Insets(0, 45, 0, 0)); wohnortLabel.setPadding(new Insets(0, 67, 0, 0)); spitznameLabel.setPadding(new Insets(0, 107, 0, 0)); lieblingsfarbeLabel.setPadding(new Insets(0, 71, 0, 0)); lieblingsessenLabel.setPadding(new Insets(0, 71, 0, 0)); lieblingstierLabel.setPadding(new Insets(0, 88, 0, 0)); hobbysLabel.setPadding(new Insets(0, 135, 0, 0)); // Label Schriftart / Schriftgröße vornameLabel.setFont(new Font("Comic Sans MS", 20)); nachnameLabel.setFont(new Font("Comic Sans MS", 20)); geburtstagLabel.setFont(new Font("Comic Sans MS", 20)); wohnortLabel.setFont(new Font("Comic Sans MS", 20)); spitznameLabel.setFont(new Font("Comic Sans MS", 20)); lieblingsfarbeLabel.setFont(new Font("Comic Sans MS", 20)); lieblingsessenLabel.setFont(new Font("Comic Sans MS", 20)); lieblingstierLabel.setFont(new Font("Comic Sans MS", 20)); hobbysLabel.setFont(new Font("Comic Sans MS", 20)); // Text Text vornameEintrag = new Text(); Text nachnameEintrag = new Text(); Text geburtstagEintrag = new Text(); Text wohnortEintrag = new Text(); Text spitznameEintrag = new Text(); Text lieblingsessenEintrag = new Text(); Text lieblingstierEintrag = new Text(); Text hobbysEintrag = new Text(); // TextBreite vornameEintrag.setWrappingWidth(200); // Damit der Abstand zwischen rechts und links wieder passt // Schriftart - größe vornameEintrag.setFont(new Font("Comic Sans MS", 20)); nachnameEintrag.setFont(new Font("Comic Sans MS", 20)); geburtstagEintrag.setFont(new Font("Comic Sans MS", 20)); wohnortEintrag.setFont(new Font("Comic Sans MS", 20)); spitznameEintrag.setFont(new Font("Comic Sans MS", 20)); lieblingsessenEintrag.setFont(new Font("Comic Sans MS", 20)); lieblingstierEintrag.setFont(new Font("Comic Sans MS", 20)); hobbysEintrag.setFont(new Font("Comic Sans MS", 20)); // In vornameBox, nachnameBox, geburtstagBox, wohnortBox, spitznameBox, lieblingsfarbeBox, lieblingsessenBox, lieblingstierBox, hobbysBox hinzu vornameBox.getChildren().addAll(vornameLabel, vornameEintrag ); nachnameBox.getChildren().addAll(nachnameLabel, nachnameEintrag ); geburtstagBox.getChildren().addAll(geburtstagLabel, geburtstagEintrag); wohnortBox.getChildren().addAll(wohnortLabel, wohnortEintrag ); spitznameBox.getChildren().addAll(spitznameLabel, spitznameEintrag ); lieblingsfarbeBox.getChildren().addAll(lieblingsfarbeLabel, kreisPosi); // lieblingsfarbe lieblingsfarbeBox.setAlignment(Pos.CENTER_LEFT); lieblingsessenBox.getChildren().addAll(lieblingsessenLabel, lieblingsessenEintrag); lieblingstierBox.getChildren().addAll(lieblingstierLabel, lieblingstierEintrag ); hobbysBox.getChildren().addAll(hobbysLabel, hobbysEintrag ); // In VBox grunddatenRechts hinzu grundedatenRechts.getChildren().addAll(vornameBox, nachnameBox, geburtstagBox, wohnortBox); grundedatenRechts.setAlignment(Pos.CENTER); grundedatenRechts.setSpacing(35); grundedatenRechts.setPadding(new Insets(50)); // In HBox Grunddaten hinzu grunddaten.getChildren().addAll(stackPane, grundedatenRechts); grunddaten.setAlignment(Pos.CENTER_LEFT); // In VBox seiteLinks hinzu seiteLinks.getChildren().addAll(grunddaten, spitznameBox, lieblingsfarbeBox, lieblingsessenBox, lieblingstierBox, hobbysBox); seiteLinks.setSpacing(35); // Seite Rechts ############################################################ // HBoxen HBox lieblingsmusikBox = new HBox(); HBox lieblingsfilmBox = new HBox(); HBox traumautoBox = new HBox(); HBox traumberufBox = new HBox(); HBox likeYouBox = new HBox(); HBox tellMeBox = new HBox(); HBox buttonAuswahl = new HBox(); // Label Label lieblingsmusikLabel = new Label("Lieblingsmusik"); Label lieblingsfilmLabel = new Label("Lieblingsfilm"); Label traumautoLabel = new Label("Traumauto"); Label traumberufLabel =new Label("Traumberuf"); Label likeYouLabel = new Label("Das mag ich\nan dir"); Label tellMeLabel = new Label("Das wolle\nich dir immer\nschon sagen"); // Label Schriftart / Schriftgröße lieblingsmusikLabel.setFont(new Font("Comic Sans MS", 20)); lieblingsfilmLabel.setFont(new Font("Comic Sans MS", 20)); traumautoLabel.setFont(new Font("Comic Sans MS", 20)); traumberufLabel.setFont(new Font("Comic Sans MS", 20)); likeYouLabel.setFont(new Font("Comic Sans MS", 20)); tellMeLabel.setFont(new Font("Comic Sans MS", 20)); // TextArea Text lieblingsmusikEintrag = new Text(); Text lieblingsfilmEintrag = new Text(); Text traumautoEintrag = new Text(); Text traumberufEintrag = new Text(); Text likeYouEintrag = new Text(); // Beschränken auf 80 Zeichen Text tellMeEintrag = new Text(); // Beschränken auf 305 Zeichen // Schriftart Text lieblingsmusikEintrag.setFont(new Font("Comic Sans MS", 20)); lieblingsfilmEintrag.setFont(new Font("Comic Sans MS", 20)); traumautoEintrag.setFont(new Font("Comic Sans MS", 20)); traumberufEintrag.setFont(new Font("Comic Sans MS", 20)); likeYouEintrag.setFont(new Font("Comic Sans MS", 20)); tellMeEintrag.setFont(new Font("Comic Sans MS", 20)); // Textumbruch likeYouEintrag.setWrappingWidth(400); tellMeEintrag.setWrappingWidth(400); // Button Button bearbeiten = new Button("Bearbeiten"); Button abbruch = new Button("Abbruch"); Button loeschen = new Button("Löschen"); buttonAuswahl.setSpacing(10.0); buttonAuswahl.setAlignment(Pos.CENTER_RIGHT); // Button Interaktion // Speichern Interaktion ############################################################ bearbeiten.setOnMouseEntered(new EventHandler() { @Override public void handle(MouseEvent event) { bearbeiten.setEffect(shadow); } }); bearbeiten.setOnMouseExited(new EventHandler() { @Override public void handle(MouseEvent event) { bearbeiten.setEffect(null); } }); bearbeiten.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { bearbeiten.setText("Speichern"); loeschen.setVisible(false); } }); // Abbruch Interaktion ############################################################## abbruch.setOnMouseEntered(new EventHandler() { @Override public void handle(MouseEvent event) { abbruch.setEffect(shadow); } }); abbruch.setOnMouseExited(new EventHandler() { @Override public void handle(MouseEvent event) { abbruch.setEffect(null); } }); abbruch.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { primaryStage.setScene(scene); primaryStage.show(); } }); // Löschen Interaktion ############################################################## loeschen.setOnMouseEntered(new EventHandler() { @Override public void handle(MouseEvent event) { loeschen.setEffect(shadow); } }); loeschen.setOnMouseExited(new EventHandler() { @Override public void handle(MouseEvent event) { loeschen.setEffect(null); } }); loeschen.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { } }); // Label und TextField Positionierung lieblingsmusikLabel.setPadding(new Insets(0, 54, 0, 0)); lieblingsfilmLabel.setPadding(new Insets(0, 69, 0, 0)); traumautoLabel.setPadding(new Insets(0, 88, 0, 0)); traumberufLabel.setPadding(new Insets(0, 75, 0, 0)); likeYouLabel.setPadding(new Insets(0, 77, 0, 0)); tellMeLabel.setPadding(new Insets(0, 64, 0, 0)); // HBoxen positionieren likeYouBox.setPadding(new Insets(50,0,0,0)); likeYouBox.setAlignment(Pos.CENTER_LEFT); tellMeBox.setPadding(new Insets(5,0,0,0)); tellMeBox.setMinHeight(250); tellMeBox.setMaxHeight(250); tellMeBox.setAlignment(Pos.CENTER_LEFT); // In HBoxen hinzu lieblingsmusikBox.getChildren().addAll(lieblingsmusikLabel, lieblingsmusikEintrag); lieblingsfilmBox.getChildren().addAll(lieblingsfilmLabel, lieblingsfilmEintrag); traumautoBox.getChildren().addAll(traumautoLabel, traumautoEintrag); traumberufBox.getChildren().addAll(traumberufLabel, traumberufEintrag); likeYouBox.getChildren().addAll(likeYouLabel, likeYouEintrag); tellMeBox.getChildren().addAll(tellMeLabel, tellMeEintrag); buttonAuswahl.getChildren().addAll(loeschen, bearbeiten, abbruch); // In Seite Rechts hinzu seiteRechts.getChildren().addAll(lieblingsmusikBox, lieblingsfilmBox, traumautoBox, traumberufBox, likeYouBox, tellMeBox, buttonAuswahl); seiteRechts.setSpacing(35); seiteRechts.setPadding(new Insets(50,0,0,0)); // Layout ################################################################## // Ins Layout einfügen root3.getChildren().addAll(seiteLinks, seiteRechts); root3.setPadding(new Insets(150)); root3.setSpacing(150); root3.setAlignment(Pos.CENTER); root3.setStyle("-fx-background-color: transparent;"); rahmen.getChildren().addAll(rand, root3); // Stage primaryStage.setScene(scene3); primaryStage.setFullScreen(true); primaryStage.show(); } }); // --------------------------------------------------------------------------------------------------------------------------------------------- // Freunde Hinzufügen Button freundeHinzufuegen.setOnMouseEntered(new EventHandler() { @Override public void handle(MouseEvent event) { freundeHinzufuegen.setEffect(shadow); } }); freundeHinzufuegen.setOnMouseExited(new EventHandler() { @Override public void handle(MouseEvent event) { freundeHinzufuegen.setEffect(null); } }); freundeHinzufuegen.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { // Layout / Scene StackPane rahmen = new StackPane(); rahmen.setStyle("-fx-background-color: white;"); HBox root3 = new HBox(); Scene scene3 = new Scene(rahmen, 800,500); VBox seiteLinks = new VBox(); VBox seiteRechts = new VBox(); seiteLinks.setStyle("-fx-background-color: transparent;"); seiteRechts.setStyle("-fx-background-color: transparent;"); // Rahmen ############################################################ // Rechteck Rectangle rand = new Rectangle(); rand.setHeight(950); rand.setWidth(1650); rand.setFill(Color.TRANSPARENT); rand.setStroke(Color.WHITE); rand.setStrokeWidth(5); // Seite Links ############################################################ // Image Image img = new Image("sample/bildIcon.jpg"); ImageView view = new ImageView(img); view.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { // File Chooser } }); // Rechteck Rectangle viereck = new Rectangle(); viereck.setHeight(250); viereck.setWidth(200); viereck.setFill(Color.TRANSPARENT); viereck.setStroke(Color.BLACK); viereck.setStrokeWidth(5); // StackPane StackPane stackPane = new StackPane(); // In StackPane hinzufügen stackPane.getChildren().addAll(viereck, view); stackPane.setMaxHeight(250); stackPane.setMaxWidth(200); // VBoxen VBox grundedatenRechts = new VBox(); // HBoxen HBox grunddaten = new HBox(); HBox vornameBox = new HBox(); HBox nachnameBox = new HBox(); HBox geburtstagBox = new HBox(); HBox wohnortBox = new HBox(); HBox spitznameBox = new HBox(); HBox lieblingsfarbeBox = new HBox(); HBox lieblingsessenBox = new HBox(); HBox lieblingstierBox = new HBox(); HBox hobbysBox = new HBox(); // Circle HBox kreisPosi = new HBox(); Circle circle = new Circle(); circle.setRadius(20); circle.setFill(Color.WHITE); kreisPosi.getChildren().add(circle); kreisPosi.setPadding(new Insets(0,0,0,110)); // Button Effekte view.setOnMouseEntered(new EventHandler() { @Override public void handle(MouseEvent event) { view.setEffect(shadow); } }); view.setOnMouseExited(new EventHandler() { @Override public void handle(MouseEvent event) { view.setEffect(null); } }); // Button Klick view.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { // Hier soll sich ein Dateiauswahlfenster öffnen wo das Bild ausgewählt werden kann } }); // ColorPicker ColorPicker colorPicker = new ColorPicker(); // ColorPicker EventHandler colorPicker.setOnAction(new EventHandler() { @Override public void handle(ActionEvent event) { // hier muss irgendwie der Rand gefärbt werden in Farbe des Color Picker viereck.setStroke(colorPicker.getValue()); rand.setStroke(colorPicker.getValue()); circle.setFill(colorPicker.getValue()); } }); // Label Label vornameLabel = new Label("Vorname"); Label nachnameLabel = new Label("Nachname"); Label geburtstagLabel = new Label("Geburtstag"); Label wohnortLabel = new Label("Wohnort"); Label spitznameLabel = new Label("Spitzname"); Label lieblingsfarbeLabel = new Label("Lieblingsfarbe"); Label lieblingsessenLabel = new Label("Lieblingsessen"); Label lieblingstierLabel = new Label("Lieblingstier"); Label hobbysLabel = new Label("Hobbys"); // Label Positionierung vornameLabel.setPadding(new Insets(0, 69, 0, 0)); nachnameLabel.setPadding(new Insets(0, 54, 0, 0)); geburtstagLabel.setPadding(new Insets(0, 45, 0, 0)); wohnortLabel.setPadding(new Insets(0, 67, 0, 0)); spitznameLabel.setPadding(new Insets(0, 107, 0, 0)); lieblingsfarbeLabel.setPadding(new Insets(0, 71, 0, 0)); lieblingsessenLabel.setPadding(new Insets(0, 71, 0, 0)); lieblingstierLabel.setPadding(new Insets(0, 88, 0, 0)); hobbysLabel.setPadding(new Insets(0, 135, 0, 0)); // Label Schriftart / Schriftgröße vornameLabel.setFont(new Font("Comic Sans MS", 20)); nachnameLabel.setFont(new Font("Comic Sans MS", 20)); geburtstagLabel.setFont(new Font("Comic Sans MS", 20)); wohnortLabel.setFont(new Font("Comic Sans MS", 20)); spitznameLabel.setFont(new Font("Comic Sans MS", 20)); lieblingsfarbeLabel.setFont(new Font("Comic Sans MS", 20)); lieblingsessenLabel.setFont(new Font("Comic Sans MS", 20)); lieblingstierLabel.setFont(new Font("Comic Sans MS", 20)); hobbysLabel.setFont(new Font("Comic Sans MS", 20)); // TextField TextField vorname = new TextField(); TextField nachname = new TextField(); TextField geburtstag = new TextField(); TextField wohnort = new TextField(); TextField spitzname = new TextField(); TextField lieblingsessen = new TextField(); TextField lieblingstier = new TextField(); TextField hobbys = new TextField(); // TextField Größen vorname.setMinHeight(30); vorname.setMinWidth(200); nachname.setMinHeight(30); nachname.setMinWidth(200); geburtstag.setMinHeight(30); geburtstag.setMinWidth(200); wohnort.setMinHeight(30); wohnort.setMinWidth(200); spitzname.setMinHeight(30); spitzname.setMinWidth(400); lieblingsessen.setMinHeight(30); lieblingsessen.setMinWidth(400); lieblingstier.setMinHeight(30); lieblingstier.setMinWidth(400); hobbys.setMinHeight(60); hobbys.setMinWidth(400); // In vornameBox, nachnameBox, geburtstagBox, wohnortBox, spitznameBox, lieblingsfarbeBox, lieblingsessenBox, lieblingstierBox, hobbysBox hinzu vornameBox.getChildren().addAll(vornameLabel, vorname); nachnameBox.getChildren().addAll(nachnameLabel, nachname); geburtstagBox.getChildren().addAll(geburtstagLabel, geburtstag); wohnortBox.getChildren().addAll(wohnortLabel, wohnort); spitznameBox.getChildren().addAll(spitznameLabel, spitzname); lieblingsfarbeBox.getChildren().addAll(lieblingsfarbeLabel, colorPicker, kreisPosi); // lieblingsfarbe lieblingsfarbeBox.setAlignment(Pos.CENTER_LEFT); lieblingsessenBox.getChildren().addAll(lieblingsessenLabel, lieblingsessen); lieblingstierBox.getChildren().addAll(lieblingstierLabel, lieblingstier); hobbysBox.getChildren().addAll(hobbysLabel, hobbys); // In VBox grunddatenRechts hinzu grundedatenRechts.getChildren().addAll(vornameBox, nachnameBox, geburtstagBox, wohnortBox); grundedatenRechts.setAlignment(Pos.CENTER); grundedatenRechts.setSpacing(35); grundedatenRechts.setPadding(new Insets(50)); // In HBox Grunddaten hinzu grunddaten.getChildren().addAll(stackPane, grundedatenRechts); grunddaten.setAlignment(Pos.CENTER_LEFT); // In VBox seiteLinks hinzu seiteLinks.getChildren().addAll(grunddaten, spitznameBox, lieblingsfarbeBox, lieblingsessenBox, lieblingstierBox, hobbysBox); seiteLinks.setSpacing(35); // Seite Rechts ############################################################ // HBoxen HBox lieblingsmusikBox = new HBox(); HBox lieblingsfilmBox = new HBox(); HBox traumautoBox = new HBox(); HBox traumberufBox = new HBox(); HBox likeYouBox = new HBox(); HBox tellMeBox = new HBox(); HBox buttonAuswahl = new HBox(); // Label Label lieblingsmusikLabel = new Label("Lieblingsmusik"); Label lieblingsfilmLabel = new Label("Lieblingsfilm"); Label traumautoLabel = new Label("Traumauto"); Label traumberufLabel =new Label("Traumberuf"); Label likeYouLabel = new Label("Das mag ich\nan dir"); Label tellMeLabel = new Label("Das wolle\nich dir immer\nschon sagen"); // Label Schriftart / Schriftgröße lieblingsmusikLabel.setFont(new Font("Comic Sans MS", 20)); lieblingsfilmLabel.setFont(new Font("Comic Sans MS", 20)); traumautoLabel.setFont(new Font("Comic Sans MS", 20)); traumberufLabel.setFont(new Font("Comic Sans MS", 20)); likeYouLabel.setFont(new Font("Comic Sans MS", 20)); tellMeLabel.setFont(new Font("Comic Sans MS", 20)); // TextFields TextField lieblingsmusik = new TextField(); TextField lieblingsfilm = new TextField(); TextField traumauto = new TextField(); TextField traumberuf = new TextField(); TextField likeYou = new TextField(); TextField tellMe = new TextField(); lieblingsmusik.setMinHeight(30); lieblingsmusik.setMinWidth(400); lieblingsfilm.setMinHeight(30); lieblingsfilm.setMinWidth(400); traumauto.setMinHeight(30); traumauto.setMinWidth(400); traumberuf.setMinHeight(30); traumberuf.setMinWidth(400); likeYou.setMinHeight(100); likeYou.setMinWidth(400); tellMe.setMinHeight(190); tellMe.setMinWidth(400); // Button Button speichern = new Button("Speichern"); Button abbruch = new Button("Abbruch"); buttonAuswahl.setSpacing(10.0); buttonAuswahl.setAlignment(Pos.CENTER_RIGHT); // Button Interaktion speichern.setOnMouseEntered(new EventHandler() { @Override public void handle(MouseEvent event) { speichern.setEffect(shadow); } }); speichern.setOnMouseExited(new EventHandler() { @Override public void handle(MouseEvent event) { speichern.setEffect(null); } }); speichern.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { if (vorname.getText().isEmpty() || nachname.getText().isEmpty() || geburtstag.getText().isEmpty() || wohnort.getText().isEmpty() || spitzname.getText().isEmpty() || lieblingsessen.getText().isEmpty() || lieblingstier.getText().isEmpty() || hobbys.getText().isEmpty() || lieblingsmusik.getText().isEmpty() || lieblingsfilm.getText().isEmpty() || traumauto.getText().isEmpty() || traumberuf.getText().isEmpty() || likeYou.getText().isEmpty() || tellMe.getText().isEmpty()) { } else { try { createFreund(statement, vorname.getText(), nachname.getText(), geburtstag.getText(), wohnort.getText(), spitzname.getText(), colorPicker.getValue().toString(), lieblingsessen.getText(), lieblingstier.getText(), hobbys.getText(), lieblingsmusik.getText(), lieblingsfilm.getText(), traumauto.getText(), traumberuf.getText(), likeYou.getText(), tellMe.getText()); } catch (SQLException throwables) { throwables.printStackTrace(); } primaryStage.setScene(scene); primaryStage.show(); } } }); abbruch.setOnMouseEntered(new EventHandler() { @Override public void handle(MouseEvent event) { abbruch.setEffect(shadow); } }); abbruch.setOnMouseExited(new EventHandler() { @Override public void handle(MouseEvent event) { abbruch.setEffect(null); } }); abbruch.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { primaryStage.setScene(scene); primaryStage.show(); } }); // Label und TextField Positionierung lieblingsmusikLabel.setPadding(new Insets(0, 54, 0, 0)); lieblingsfilmLabel.setPadding(new Insets(0, 69, 0, 0)); traumautoLabel.setPadding(new Insets(0, 88, 0, 0)); traumberufLabel.setPadding(new Insets(0, 75, 0, 0)); likeYouLabel.setPadding(new Insets(0, 77, 0, 0)); tellMeLabel.setPadding(new Insets(0, 64, 0, 0)); // HBoxen positionieren likeYouBox.setPadding(new Insets(50,0,0,0)); likeYouBox.setAlignment(Pos.CENTER_LEFT); tellMeBox.setPadding(new Insets(5,0,0,0)); tellMeBox.setAlignment(Pos.CENTER_LEFT); // In HBoxen hinzu lieblingsmusikBox.getChildren().addAll(lieblingsmusikLabel, lieblingsmusik); lieblingsfilmBox.getChildren().addAll(lieblingsfilmLabel, lieblingsfilm); traumautoBox.getChildren().addAll(traumautoLabel, traumauto); traumberufBox.getChildren().addAll(traumberufLabel, traumberuf); likeYouBox.getChildren().addAll(likeYouLabel, likeYou); tellMeBox.getChildren().addAll(tellMeLabel, tellMe); buttonAuswahl.getChildren().addAll(speichern, abbruch); // In Seite Rechts hinzu seiteRechts.getChildren().addAll(lieblingsmusikBox, lieblingsfilmBox, traumautoBox, traumberufBox, likeYouBox, tellMeBox, buttonAuswahl); seiteRechts.setSpacing(35); seiteRechts.setPadding(new Insets(50,0,0,0)); // Layout ################################################################## // Ins Layout einfügen root3.getChildren().addAll(seiteLinks, seiteRechts); root3.setPadding(new Insets(150)); root3.setSpacing(150); root3.setAlignment(Pos.CENTER); root3.setStyle("-fx-background-color: transparent;"); rahmen.getChildren().addAll(rand, root3); // Stage primaryStage.setScene(scene3); primaryStage.setFullScreen(true); primaryStage.show(); } }); // --------------------------------------------------------------------------------------------------------------------------------------------- // Freunde Suchen Button freundeSuchen.setOnMouseEntered(new EventHandler() { @Override public void handle(MouseEvent event) { freundeSuchen.setEffect(shadow); } }); freundeSuchen.setOnMouseExited(new EventHandler() { @Override public void handle(MouseEvent event) { freundeSuchen.setEffect(null); } }); freundeSuchen.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { // Layout / Scene VBox root4 = new VBox(); HBox hBox = new HBox(); Scene scene4 = new Scene(root4, 250,250); // Label Label nameLabel = new Label("Vorname:"); nameLabel.setFont(new Font("Comic Sans MS", 15)); nameLabel.setStyle("-fx-font-weight: bold;"); // TextField TextField freundSuche = new TextField(); freundSuche.setMaxWidth(130.0); freundSuche.setAlignment(Pos.CENTER); // Button Button suche = new Button("Suche"); Button zurueck = new Button("Zurück"); suche.setMinWidth(60.0); zurueck.setMinWidth(60.0); // Suchen Button Hover suche.setOnMouseEntered(new EventHandler() { @Override public void handle(MouseEvent event) { suche.setEffect(shadow); } }); suche.setOnMouseExited(new EventHandler() { @Override public void handle(MouseEvent event) { suche.setEffect(null); } }); // Zurück Button Hover zurueck.setOnMouseEntered(new EventHandler() { @Override public void handle(MouseEvent event) { zurueck.setEffect(shadow); } }); zurueck.setOnMouseExited(new EventHandler() { @Override public void handle(MouseEvent event) { zurueck.setEffect(null); } }); // Suche Button Click suche.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { if (freundSuche.getText().isEmpty()) { freundSuche.setStyle("-fx-border-color: red;"); } } }); // Zurück Button Click zurueck.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent event) { primaryStage.setScene(scene); primaryStage.setResizable(true); primaryStage.show(); } }); // Ins Layout einfügen hBox.getChildren().addAll(suche, zurueck); hBox.setAlignment(Pos.CENTER); hBox.setSpacing(10.0); root4.getChildren().addAll(nameLabel, freundSuche, hBox); root4.setAlignment(Pos.CENTER); root4.setSpacing(15.0); root4.setStyle("-fx-background-image: url(\"/sample/sucheBackground.jpg\");" + "-fx-background-repeat: no-repeat;"); // Stage primaryStage.setScene(scene4); primaryStage.setResizable(false); primaryStage.show(); } }); // Ins Layout einfügen root.setAlignment(Pos.CENTER); root.getChildren().addAll(labelMenue, freundeAnzeigen, freundeHinzufuegen, freundeSuchen); // Stage primaryStage.setScene(scene); primaryStage.show(); } }