From aa038cc03653bab095b2588c54e4b6c2a0add362 Mon Sep 17 00:00:00 2001 From: John Date: Mon, 15 Nov 2021 10:46:53 +0100 Subject: [PATCH] TestFreundebuch --- .gitignore | 25 + DigitalesFreundebuch/.idea/.gitignore | 3 + DigitalesFreundebuch/.idea/compiler.xml | 23 + DigitalesFreundebuch/.idea/description.html | 2 + DigitalesFreundebuch/.idea/encodings.xml | 6 + DigitalesFreundebuch/.idea/gradle.xml | 4 + DigitalesFreundebuch/.idea/misc.xml | 9 + DigitalesFreundebuch/.idea/modules.xml | 8 + DigitalesFreundebuch/.idea/uiDesigner.xml | 125 ++++ DigitalesFreundebuch/.idea/vcs.xml | 7 + DigitalesFreundebuch/DigitalesFreundebuch.iml | 20 + .../sample/application.css | 2 + .../DigitalesFreundebuch/sample/bildIcon.jpg | Bin 0 -> 2053 bytes .../DigitalesFreundebuch/sample/sample.fxml | 8 + .../sample/sucheBackground.jpg | Bin 0 -> 7653 bytes .../src/sample/Controller.java | 4 + DigitalesFreundebuch/src/sample/Main.java | 570 ++++++++++++++++++ .../src/sample/application.css | 2 + DigitalesFreundebuch/src/sample/bildIcon.jpg | Bin 0 -> 2053 bytes DigitalesFreundebuch/src/sample/sample.fxml | 8 + .../src/sample/sucheBackground.jpg | Bin 0 -> 7653 bytes 21 files changed, 826 insertions(+) create mode 100644 .gitignore create mode 100644 DigitalesFreundebuch/.idea/.gitignore create mode 100644 DigitalesFreundebuch/.idea/compiler.xml create mode 100644 DigitalesFreundebuch/.idea/description.html create mode 100644 DigitalesFreundebuch/.idea/encodings.xml create mode 100644 DigitalesFreundebuch/.idea/gradle.xml create mode 100644 DigitalesFreundebuch/.idea/misc.xml create mode 100644 DigitalesFreundebuch/.idea/modules.xml create mode 100644 DigitalesFreundebuch/.idea/uiDesigner.xml create mode 100644 DigitalesFreundebuch/.idea/vcs.xml create mode 100644 DigitalesFreundebuch/DigitalesFreundebuch.iml create mode 100644 DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/application.css create mode 100644 DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/bildIcon.jpg create mode 100644 DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/sample.fxml create mode 100644 DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/sucheBackground.jpg create mode 100644 DigitalesFreundebuch/src/sample/Controller.java create mode 100644 DigitalesFreundebuch/src/sample/Main.java create mode 100644 DigitalesFreundebuch/src/sample/application.css create mode 100644 DigitalesFreundebuch/src/sample/bildIcon.jpg create mode 100644 DigitalesFreundebuch/src/sample/sample.fxml create mode 100644 DigitalesFreundebuch/src/sample/sucheBackground.jpg diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..eecc4de --- /dev/null +++ b/.gitignore @@ -0,0 +1,25 @@ +# Compiled class file +*.class + +# Log file +*.log + +# BlueJ files +*.ctxt + +# Mobile Tools for Java (J2ME) +.mtj.tmp/ + +# Package Files # +*.jar +*.war +*.nar +*.ear +*.zip +*.tar.gz +*.rar + +# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml +hs_err_pid* + +#Quelle: https://github.com/github/gitignore/blob/master/Java.gitignore \ No newline at end of file diff --git a/DigitalesFreundebuch/.idea/.gitignore b/DigitalesFreundebuch/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/DigitalesFreundebuch/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/DigitalesFreundebuch/.idea/compiler.xml b/DigitalesFreundebuch/.idea/compiler.xml new file mode 100644 index 0000000..217af47 --- /dev/null +++ b/DigitalesFreundebuch/.idea/compiler.xml @@ -0,0 +1,23 @@ + + + + + + diff --git a/DigitalesFreundebuch/.idea/description.html b/DigitalesFreundebuch/.idea/description.html new file mode 100644 index 0000000..cc10d56 --- /dev/null +++ b/DigitalesFreundebuch/.idea/description.html @@ -0,0 +1,2 @@ +Simple JavaFX 2.0 application that includes simple .fxml file with attached controller and Main class to quick start. Artifact to build JavaFX application is provided. + \ No newline at end of file diff --git a/DigitalesFreundebuch/.idea/encodings.xml b/DigitalesFreundebuch/.idea/encodings.xml new file mode 100644 index 0000000..97626ba --- /dev/null +++ b/DigitalesFreundebuch/.idea/encodings.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/DigitalesFreundebuch/.idea/gradle.xml b/DigitalesFreundebuch/.idea/gradle.xml new file mode 100644 index 0000000..3e3960b --- /dev/null +++ b/DigitalesFreundebuch/.idea/gradle.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/DigitalesFreundebuch/.idea/misc.xml b/DigitalesFreundebuch/.idea/misc.xml new file mode 100644 index 0000000..4e6e724 --- /dev/null +++ b/DigitalesFreundebuch/.idea/misc.xml @@ -0,0 +1,9 @@ + + + + + + + + \ No newline at end of file diff --git a/DigitalesFreundebuch/.idea/modules.xml b/DigitalesFreundebuch/.idea/modules.xml new file mode 100644 index 0000000..eb24817 --- /dev/null +++ b/DigitalesFreundebuch/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/DigitalesFreundebuch/.idea/uiDesigner.xml b/DigitalesFreundebuch/.idea/uiDesigner.xml new file mode 100644 index 0000000..3b00020 --- /dev/null +++ b/DigitalesFreundebuch/.idea/uiDesigner.xml @@ -0,0 +1,125 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/DigitalesFreundebuch/.idea/vcs.xml b/DigitalesFreundebuch/.idea/vcs.xml new file mode 100644 index 0000000..def6a6a --- /dev/null +++ b/DigitalesFreundebuch/.idea/vcs.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/DigitalesFreundebuch/DigitalesFreundebuch.iml b/DigitalesFreundebuch/DigitalesFreundebuch.iml new file mode 100644 index 0000000..ca904e8 --- /dev/null +++ b/DigitalesFreundebuch/DigitalesFreundebuch.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/application.css b/DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/application.css new file mode 100644 index 0000000..c6d429b --- /dev/null +++ b/DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/application.css @@ -0,0 +1,2 @@ +.root { +} \ No newline at end of file diff --git a/DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/bildIcon.jpg b/DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/bildIcon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c91e2653c57324654732211072f0af4d95e4c8c7 GIT binary patch literal 2053 zcmbW2c~H~W7RP@f30VM1SOP*M5fTVc2%88N8$q@oAT+!JihyAimC7btpKKuol4n69 zt3}a(MJpl!LCT`CRiY>bM6fI+EV5|XpgsALIGn~l zGC@OA2am%MKOySq>ggNk?B@hGxfkvX0(P(9g22O+WKZoQgfJFjY zfB_Vu4ai_2P%K2!0T2KH0++hoHT>^@$Uvoj5l9qTPAaIw05T9LR0alx!(lL~I$2r= zU|6`)ep6dnWqKe&J6gpo{mLz*jvc>M)w6erWF8d5M4@qN>U%ZFx_T6S1B(Ne2d%6R z9kq9GbaDn={_%yEx6kntzQG}(VW-2-oQ=H@7oU)r^i>Ay>&&cdHivsPFTbF$sQ4PM zto-(O6?g7_UsLk>Tg>wi7)W^m~3&%%kxsp)q!vvc#yE30ek z8^4J*w|2Q80Q66+zsUZ^g_Uy2z+g}qVwVddlOWwtEDXNiR94BBjtGoa);3E=s@Pq* z#cxIFn0qd%2F3KEaU=^Nd3hJ@53>IbjQM|&{RQ?PuAc#UC`9^rP%J>>bICeoiFUOu@b-taely!yg5j#L9oAkJo@fqY2*&sx1i^s zIBD}nz{`*IGuFTQ6WU8R4GNzuzAxSKkMwG`#gz#cGmi<4Vm<2l{lTI2kr>xF^^DWS z4Q|Sxohex#ezdsSgzv{jiZL_|3DC1B_V>+|09dCTV#)ytQ2NVGV;w=P-Ewx-tGc$2 zG+_LInCqTHJzV9Q`-!f3(_!SZ89(D5wZsR97K)Q~Ga?Z^x93)$bq+237JSDCZy>LV zh~8`f@QVMkD8-6mMie~7Vp`qFu_WaaqJj-?j`RJ{>!1%B*`4@)tfjxbMnKD26MPr5 zA~>hqWGV>yTlbM8UtyW>` zChkJ+)@qgnIHCfX5bqm|xcKShN2kwUPwArt_j%gJbL80M^EeCo3v(?%b#{#KQ)FDS zCk-oVBdc)~H&Tk66W7*sU^iZxD>jcJMgz<|2={gj2dD?wRb9R3ZJM_44eO8n^F`A5 z>MyazvmvJfOP4EB+a4`bcXr;Uj<5PifGG|zUn$lcIyv848{qdsxSfR<_N3wS_j6rGyT7v?23T3^3;4LRNLI?k|E z?3?KA+bswWij zhd$s9+Uebwife~z`aEa&ZxR+pozA7*baJF)D~Kf#_Iyun^-jzZ=3HMndv)${LY91V zX4W*1gtE2Lv^jE~zTHU+X7y1t>(J!d5CiPtANy|!8ABFALPwo#4Upe;!hgVB1 zapRS{aNU?o^72M5bT%h-|y!z^7xLhJ#!cR;+NsVdK?!>z*a^0@HoL}qzqH;WuhREB~90aQ&A|cjjyX6b2hzRn%=s3n?%YE2$!mP1YfComTk#>TJ`|M z9PV{g`at(4Wow1&u;o!aMPC;6ts(Ecn`^^6IWmP zDz)ulc7IC(t!>{OcwZi%LQX-H#J=aJR3rV=#XQ5k`B( literal 0 HcmV?d00001 diff --git a/DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/sample.fxml b/DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/sample.fxml new file mode 100644 index 0000000..363237a --- /dev/null +++ b/DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/sample.fxml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/sucheBackground.jpg b/DigitalesFreundebuch/out/production/DigitalesFreundebuch/sample/sucheBackground.jpg new file mode 100644 index 0000000000000000000000000000000000000000..416799e3a3449d6d5beffb82aa12b33081e24dbd GIT binary patch literal 7653 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 ssQJ2l1Hb|YlJHcczDxgj~pZViI_W$2Kb5p() { + @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 + GridPane root2 = new GridPane(); + Scene scene2 = new Scene(root2, 800,500); + + // Ins Layout einfügen + + // Stage + primaryStage.setScene(scene2); + 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) { + + } + }); + 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(); + } + + public static void main(String[] args) { + launch(args); + } +} diff --git a/DigitalesFreundebuch/src/sample/application.css b/DigitalesFreundebuch/src/sample/application.css new file mode 100644 index 0000000..c6d429b --- /dev/null +++ b/DigitalesFreundebuch/src/sample/application.css @@ -0,0 +1,2 @@ +.root { +} \ No newline at end of file diff --git a/DigitalesFreundebuch/src/sample/bildIcon.jpg b/DigitalesFreundebuch/src/sample/bildIcon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c91e2653c57324654732211072f0af4d95e4c8c7 GIT binary patch literal 2053 zcmbW2c~H~W7RP@f30VM1SOP*M5fTVc2%88N8$q@oAT+!JihyAimC7btpKKuol4n69 zt3}a(MJpl!LCT`CRiY>bM6fI+EV5|XpgsALIGn~l zGC@OA2am%MKOySq>ggNk?B@hGxfkvX0(P(9g22O+WKZoQgfJFjY zfB_Vu4ai_2P%K2!0T2KH0++hoHT>^@$Uvoj5l9qTPAaIw05T9LR0alx!(lL~I$2r= zU|6`)ep6dnWqKe&J6gpo{mLz*jvc>M)w6erWF8d5M4@qN>U%ZFx_T6S1B(Ne2d%6R z9kq9GbaDn={_%yEx6kntzQG}(VW-2-oQ=H@7oU)r^i>Ay>&&cdHivsPFTbF$sQ4PM zto-(O6?g7_UsLk>Tg>wi7)W^m~3&%%kxsp)q!vvc#yE30ek z8^4J*w|2Q80Q66+zsUZ^g_Uy2z+g}qVwVddlOWwtEDXNiR94BBjtGoa);3E=s@Pq* z#cxIFn0qd%2F3KEaU=^Nd3hJ@53>IbjQM|&{RQ?PuAc#UC`9^rP%J>>bICeoiFUOu@b-taely!yg5j#L9oAkJo@fqY2*&sx1i^s zIBD}nz{`*IGuFTQ6WU8R4GNzuzAxSKkMwG`#gz#cGmi<4Vm<2l{lTI2kr>xF^^DWS z4Q|Sxohex#ezdsSgzv{jiZL_|3DC1B_V>+|09dCTV#)ytQ2NVGV;w=P-Ewx-tGc$2 zG+_LInCqTHJzV9Q`-!f3(_!SZ89(D5wZsR97K)Q~Ga?Z^x93)$bq+237JSDCZy>LV zh~8`f@QVMkD8-6mMie~7Vp`qFu_WaaqJj-?j`RJ{>!1%B*`4@)tfjxbMnKD26MPr5 zA~>hqWGV>yTlbM8UtyW>` zChkJ+)@qgnIHCfX5bqm|xcKShN2kwUPwArt_j%gJbL80M^EeCo3v(?%b#{#KQ)FDS zCk-oVBdc)~H&Tk66W7*sU^iZxD>jcJMgz<|2={gj2dD?wRb9R3ZJM_44eO8n^F`A5 z>MyazvmvJfOP4EB+a4`bcXr;Uj<5PifGG|zUn$lcIyv848{qdsxSfR<_N3wS_j6rGyT7v?23T3^3;4LRNLI?k|E z?3?KA+bswWij zhd$s9+Uebwife~z`aEa&ZxR+pozA7*baJF)D~Kf#_Iyun^-jzZ=3HMndv)${LY91V zX4W*1gtE2Lv^jE~zTHU+X7y1t>(J!d5CiPtANy|!8ABFALPwo#4Upe;!hgVB1 zapRS{aNU?o^72M5bT%h-|y!z^7xLhJ#!cR;+NsVdK?!>z*a^0@HoL}qzqH;WuhREB~90aQ&A|cjjyX6b2hzRn%=s3n?%YE2$!mP1YfComTk#>TJ`|M z9PV{g`at(4Wow1&u;o!aMPC;6ts(Ecn`^^6IWmP zDz)ulc7IC(t!>{OcwZi%LQX-H#J=aJR3rV=#XQ5k`B( literal 0 HcmV?d00001 diff --git a/DigitalesFreundebuch/src/sample/sample.fxml b/DigitalesFreundebuch/src/sample/sample.fxml new file mode 100644 index 0000000..363237a --- /dev/null +++ b/DigitalesFreundebuch/src/sample/sample.fxml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/DigitalesFreundebuch/src/sample/sucheBackground.jpg b/DigitalesFreundebuch/src/sample/sucheBackground.jpg new file mode 100644 index 0000000000000000000000000000000000000000..416799e3a3449d6d5beffb82aa12b33081e24dbd GIT binary patch literal 7653 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 ssQJ2l1Hb|YlJHcczDxgj~pZViI_W$2Kb5p