summaryrefslogtreecommitdiff
path: root/Java-Kompendium/kap17/src/main/java/Hauptfenster.java
blob: 48839e557087479476ded488e068d41a247dce91 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
import java.sql.*;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.HPos;
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.text.Font;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
import javafx.stage.Stage;

public class Hauptfenster extends Application {
    @Override
    public void start(Stage stage) throws SQLException {
        String host = "jdbc:hsqldb:mem:mitarbeiter";

        Connection verbindung = DriverManager.getConnection(host);
        Statement befehl = verbindung.createStatement();
        String SQL = """
            CREATE TABLE Mitarbeiter (
                persnr INTEGER Primary Key Not Null,
                name VARCHAR(30),
                vorname VARCHAR(30),
                gehalt DECIMAL(9,2)
            )
        """;
        befehl.executeUpdate(SQL);

        GridPane grid = new GridPane();
        grid.setAlignment(Pos.CENTER);
        grid.setHgap(30);
        grid.setVgap(50);
        grid.setPadding(new Insets(20, 20, 20, 20));
        stage.setTitle("Personalverwaltung");
        Text titel = new Text("Wählen Sie eine Aktion aus:");
        titel.setFont(Font.font("Arial", FontWeight.BOLD, 14));
        grid.add(titel, 0, 0, 2, 1);

        ButtonHinzufuegen btn1 = new ButtonHinzufuegen("Mitarbeiter hinzufügen");
        grid.add(btn1, 0, 1);
        btn1.setPrefSize(200, 50);

        ButtonEntfernen btn2 = new ButtonEntfernen("Mitarbeiter entfernen");
        grid.add(btn2, 1, 1);
        btn2.setPrefSize(200, 50);

        ButtonGehalt btn3 = new ButtonGehalt("Gehalt anpassen");
        grid.add(btn3, 0, 2);
        btn3.setPrefSize(200, 50);

        ButtonAnzeigen btn4 = new ButtonAnzeigen("Personal anzeigen");
        grid.add(btn4, 1, 2);
        btn4.setPrefSize(200, 50);

        Button btn5 = new Button("OK");
        grid.add(btn5, 0, 3, 2, 1);
        btn5.setPrefSize(100, 20);
        GridPane.setHalignment(btn5, HPos.CENTER);

        btn1.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent e) {
                btn1.neuesFenster(stage);
            }
        });
        btn2.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent e) {
                btn2.neuesFenster(stage);
            }
        });
        btn3.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent e) {
                btn3.neuesFenster(stage);
            }
        });
        btn4.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent e) {
                btn4.neuesFenster(stage);
            }
        });
        btn5.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent e) {
                stage.close();
            }
        });

        Scene scene = new Scene(grid, 600, 400);
        stage.setScene(scene);
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}