From 0807468908a786aef75cccb98dc5acd5e43a0baf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niko=20Jousj=C3=A4rvi=5F1?= <jousjarvi@gmail.com> Date: Mon, 12 Feb 2018 16:23:39 +0200 Subject: [PATCH] =?UTF-8?q?Kirjautumissivun=20toiminnallisuus=20lis=C3=A4t?= =?UTF-8?q?ty?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/sample/Main.java | 122 ++++++++++++++++++++++++--------- 1 file changed, 91 insertions(+), 31 deletions(-) diff --git a/src/main/java/sample/Main.java b/src/main/java/sample/Main.java index 7872305..1c890ce 100644 --- a/src/main/java/sample/Main.java +++ b/src/main/java/sample/Main.java @@ -1,10 +1,15 @@ 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.Button; import javafx.scene.layout.GridPane; +import javafx.scene.layout.HBox; +import javafx.scene.layout.VBox; import javafx.scene.text.Font; import javafx.scene.text.FontWeight; import javafx.scene.text.Text; @@ -12,45 +17,100 @@ import javafx.stage.Stage; import javafx.scene.control.Label; import javafx.scene.control.TextField; + public class Main extends Application { + //Ikkunan koko + private int ikkunaX = 500; + private int ikkunaY = 475; + + //Scenet on ohjelman sivuja + private Scene kirjautumisScene, asiakasScene, adminScene; + @Override public void start(Stage primaryStage) throws Exception{ //Ohjelman nimi, joka näkyy ikkunan yläpalkissa primaryStage.setTitle("Käyttöliittymät 2018"); - //Ikkunaan luodaan ruudukko johon sivun elementit voidaan sijoitella - GridPane grid = new GridPane(); - grid.setAlignment(Pos.CENTER); - grid.setHgap(10); - grid.setVgap(10); - grid.setPadding(new Insets(25, 25, 25, 25)); - - //Luodaan ja lisätään ruudukkoon "Tervetuloa" -teksti - Text scenetitle = new Text("Tervetuloa"); - scenetitle.setFont(Font.font("Arial", FontWeight.NORMAL, 20)); - grid.add(scenetitle, 0, 0, 2, 1); - - //Luodaan "Käyttäjänimi: " -teksti ja lisätään se ruudukkoon - Label userName = new Label("Käyttäjänimi: "); - grid.add(userName, 0, 1); - - //Tekstikenttä johon käyttäjä kirjoittaa käyttäjänimensä - TextField kayttajaTextField = new TextField(); - grid.add(kayttajaTextField, 1, 1); - - //Luodaan "Salasana: " -teksti ruudukkoon - Label password = new Label("Salasana: "); - grid.add(password, 0, 2); - - //Tekstikenttä johon käyttäjä kirjoittaa salasanansa - TextField salaTextField = new TextField(); - grid.add(salaTextField, 1, 2); - - //Ikkunan koko - Scene scene = new Scene(grid, 500, 475); - primaryStage.setScene(scene); + + //KIRJAUTUMISSTAGE + + + //Ikkunaan luodaan ruudukko johon sivun elementit voidaan sijoitella + GridPane grid = new GridPane(); + grid.setAlignment(Pos.CENTER); + grid.setHgap(10); + grid.setVgap(10); + grid.setPadding(new Insets(25, 25, 25, 25)); + + //Ruudukon elementit + + //"Kirjaudu sisään" painike + Button loginButton = new Button("Kirjaudu sisään"); + HBox hbNap = new HBox(10); + hbNap.setAlignment(Pos.BOTTOM_RIGHT); + hbNap.getChildren().add(loginButton); + grid.add(hbNap, 1, 4); + + //Luodaan ja lisätään ruudukkoon "Tervetuloa" -teksti + Text scenetitle = new Text("Tervetuloa"); + scenetitle.setFont(Font.font("Arial", FontWeight.NORMAL, 20)); + grid.add(scenetitle, 0, 0, 2, 1); + + //Luodaan "Käyttäjänimi: " -teksti ja lisätään se ruudukkoon + Label userName = new Label("Käyttäjänimi: "); + grid.add(userName, 0, 1); + + //Tekstikenttä johon käyttäjä kirjoittaa käyttäjänimensä + TextField kayttajaTextField = new TextField(); + grid.add(kayttajaTextField, 1, 1); + + //Luodaan "Salasana: " -teksti ruudukkoon + Label password = new Label("Salasana: "); + grid.add(password, 0, 2); + + //Tekstikenttä johon käyttäjä kirjoittaa salasanansa + TextField salaTextField = new TextField(); + grid.add(salaTextField, 1, 2); + + + //"Kirjaudu sisään" -painikkeen toiminta + loginButton.setOnAction(new EventHandler<ActionEvent>() { + @Override + public void handle(ActionEvent event) { + if (kayttajaTextField.getText().equals("admin")){ + primaryStage.setScene(adminScene); + } + else{ + primaryStage.setScene(asiakasScene); + } + } + }); + + //Määrittellään uusi stage, nimeltään kirjautumisStage, joka on ohjelman kirjautumissivu + kirjautumisScene = new Scene(grid, ikkunaX, ikkunaY); + + + //ASIAKASSTAGE + + //PLACEHOLDER KOODIA + Label asiakasLabel = new Label("ASIAKASSCENE"); + VBox asiakaslayout = new VBox(20); + asiakaslayout.getChildren().addAll(asiakasLabel); + asiakasScene = new Scene(asiakaslayout, ikkunaX, ikkunaY); + + //ADMINSTAGE + + //PLACEHOLDER KOODIA + Label adminLabel = new Label("ADMINSCENE"); + VBox adminlayout = new VBox(20); + adminlayout.getChildren().addAll(adminLabel); + adminScene = new Scene(adminlayout, ikkunaX, ikkunaY); + + + //Ohjelma aloittaa kirjautumissivusta + primaryStage.setScene(kirjautumisScene); primaryStage.show(); } -- GitLab