diff --git a/README.md b/README.md
index 940811b4b2353806bb59821548107f72c24fbc36..163ab611cc322893c21892be580514f5eeba300a 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,4 @@
 [![pipeline status](https://www.gitrepo.de/alfatrainingkurse/java/enigma/badges/master/pipeline.svg)](https://www.gitrepo.de/alfatrainingkurse/java/enigma/commits/master)
+[![coverage report](https://www.gitrepo.de/alfatrainingkurse/java/enigma/badges/master/coverage.svg)](https://www.gitrepo.de/alfatrainingkurse/java/enigma/commits/master)
 
 Link zum [Wiki](https://www.gitrepo.de/alfatrainingkurse/java/enigma/wikis/home)
\ No newline at end of file
diff --git a/src/main/java/Enigma/GuiController.java b/src/main/java/Enigma/GuiController.java
index 7e444ce2d9d8ea92ab29b90f1a76c37f048901a6..3bfb5056ad2d8ed737f883004b0f7747c0ed5dea 100644
--- a/src/main/java/Enigma/GuiController.java
+++ b/src/main/java/Enigma/GuiController.java
@@ -1,225 +1,250 @@
 package Enigma;
 
 import javafx.fxml.FXML;
-import javafx.scene.control.Label;
-import javafx.scene.control.MenuButton;
-import javafx.scene.control.MenuItem;
+import javafx.scene.control.*;
+
 
 import java.awt.event.ActionEvent;
 import java.util.ArrayList;
-import java.util.List;
 
 public class GuiController {
+    ArrayList<MenuItem> mItem;
+    private final static String[] str= {"I", "II", "III", "IV", "V"};
+    private final static String[] num ={"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"};
+    private final static String[] bs ={"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"};
+
 
     @FXML
-    private MenuButton w1;
-//
-//    @FXML
-//    private MenuItem w1I;
-//
-//    @FXML
-//    private MenuItem w1II;
-//
-//    @FXML
-//    private MenuItem w1III;
-//    @FXML
-//    private MenuItem w1IV;
-//
-//    @FXML
-//    private MenuItem w1V;
+    private Button btnL;
 
     @FXML
-    private MenuButton w2;
+    private Button btnP;
+
     @FXML
-    private MenuItem w2I;
+    private Button btnY;
 
     @FXML
-    private MenuItem w2II;
+    private Button btnX;
 
     @FXML
-    private MenuItem w2III;
+    private Button btnC;
 
     @FXML
-    private MenuItem w2IV;
+    private Button btnV;
 
     @FXML
-    private MenuItem w2V;
+    private Button btnB;
 
     @FXML
-    private MenuButton w3;
+    private Button btnN;
 
     @FXML
-    private MenuItem w3I;
+    private Button btnM;
 
     @FXML
-    private MenuItem w3II;
+    private Button btnA;
 
     @FXML
-    private MenuItem w3III;
+    private Button btnS;
+
     @FXML
-    private MenuItem w3IV;
+    private Button btnD;
 
     @FXML
-    private MenuItem w3V;
+    private Button btnF;
 
+    @FXML
+    private Button btnG;
 
     @FXML
-    void w3I(ActionEvent event) {
-    }
+    private Button btnH;
 
     @FXML
-    void w3II(ActionEvent event) {
-    }
+    private Button btnJ;
 
     @FXML
-    void w3III(ActionEvent event) {
-    }
+    private Button btnK;
+
     @FXML
-    void w3IV(ActionEvent event) {
-    }
+    private Button btnQ;
+
     @FXML
-    void w3V(ActionEvent event) {
-    }
+    private Button btnW;
 
     @FXML
-    void btnsenden(ActionEvent event) {
-    }
-    public void btnsenden(){
+    private Button btnE;
 
-    }
-//    @FXML
-//    void w1I(ActionEvent event) {
-//    }
-//    @FXML
-//    void w1II(ActionEvent event) {
-//    }
-//    @FXML
-//    void w1III(ActionEvent event) {
-//    }
-//    @FXML
-//    void w1IV(ActionEvent event) {
-//    }
-//    @FXML
-//    void w1V(ActionEvent event) {
-//    }
+    @FXML
+    private Button btnR;
 
     @FXML
-    void w2I(ActionEvent event) {
-    }
+    private Button btnT;
+
     @FXML
-    void w2II(ActionEvent event) {
-    }
+    private Button btnZ;
+
     @FXML
-    void w2III(ActionEvent event) {
-    }
+    private Button btnU;
+
     @FXML
-    void w2IV(ActionEvent event) {
-    }
+    private Button btnI;
+
     @FXML
-    void w2V(ActionEvent event) {
-    }
+    private Button btnO;
 
-//    // Action Listener für erste Walze
-//    public void w1I(){
-//        w1.setText(w1I.getText());
-//    }
-//    public void w1II(){
-//       w1.setText(w1II.getText());
-//    }
-//    public void w1III(){
-//        w1.setText(w1III.getText());
-//    }
-//   public void w1IV(){
-//        w1.setText(w1IV.getText());
-//    }
-//   public void w1V(){
-//        w1.setText(w1V.getText());
-//    }
-    // Action Listener für zweite Walze
-    public void w2I(){
-        w2.setText(w2I.getText());
-    }
-    public void w2II(){
-        w2.setText(w2II.getText());
-    }
-    public void w2III(){
-        w2.setText(w2III.getText());
-    }
-    public void w2IV(){
-        w2.setText(w2IV.getText());
-    }
-    public void w2V(){
-        w2.setText(w2V.getText());
-    }
-    // Action Listener für dritte Walze
-    public void w3I(){
-        w3.setText(w3I.getText());
-    }
-    public void w3II(){
-        w3.setText(w3II.getText());
-    }
-    public void w3III(){
-        w3.setText(w3III.getText());
-    }
-    public void w3IV(){
-        w3.setText(w3IV.getText());
-    }
-    public void w3V(){
-        w3.setText(w3V.getText());
-    }
+    @FXML
+    private Button btnLöschen;
 
-    public void listener(MenuButton mb, MenuItem mi){
-        mb.setText(mi.getText());
-    }
-//
-//    public void walzenListener(){
-//        MenuItem[] buttons = {w1I,w1II,w1II,w1IV,w1V};
-//        for (int i =0; i<6; i++) {
-//            listener(w1, buttons[i]);
-//        }
-//    }
+    @FXML
+    private MenuButton mBtnWalzPos1;
 
+    @FXML
+    private MenuButton mBtnWalzPos3;
 
+    @FXML
+    private MenuButton mBtnWalzPos2;
 
     @FXML
-    void initialize() {
+    private MenuButton mBtnNotchPos3;
 
-//        for (int i =0; i<6; i++) {
-//
-//            mi.add(new MenuItem("W"+i));
-//        }
+    @FXML
+    private MenuButton mBtnNotchPos2;
+
+    @FXML
+    private MenuButton mBtnStartPos1;
 
-        ArrayList<MenuItem> mi;
+    @FXML
+    private MenuButton mBtnStartPos3;
 
-        for (int i =0; i<6; i++) {
-            String[] str={"I","II","III","IV","V"};
-            MenuItem mb2 = new MenuItem("W"+i);
-            w1.getItems().add(mb2);
-          //  listener(w1,mb2);
-        }
-       // listener(w1,);
-
-
-      //  walzenListener();
-
-        assert w1 != null : "fx:id=\"w1\" was not injected: check your FXML file 'primary.fxml'.";
-//        assert w1I != null : "fx:id=\"w1I\" was not injected: check your FXML file 'primary.fxml'.";
-//        assert w1II != null : "fx:id=\"w1II\" was not injected: check your FXML file 'primary.fxml'.";
-//        assert w1III != null : "fx:id=\"w1III\" was not injected: check your FXML file 'primary.fxml'.";
-//        assert w1IV != null : "fx:id=\"w1IV\" was not injected: check your FXML file 'primary.fxml'.";
-//        assert w1V != null : "fx:id=\"w1V\" was not injected: check your FXML file 'primary.fxml'.";
-        assert w3 != null : "fx:id=\"w3\" was not injected: check your FXML file 'primary.fxml'.";
-        assert w3I != null : "fx:id=\"w3I\" was not injected: check your FXML file 'primary.fxml'.";
-        assert w3II != null : "fx:id=\"w3II\" was not injected: check your FXML file 'primary.fxml'.";
-        assert w3III != null : "fx:id=\"w3III\" was not injected: check your FXML file 'primary.fxml'.";
-        assert w3IV != null : "fx:id=\"w3IV\" was not injected: check your FXML file 'primary.fxml'.";
-        assert w3V != null : "fx:id=\"w3V\" was not injected: check your FXML file 'primary.fxml'.";
-        assert w2 != null : "fx:id=\"w2\" was not injected: check your FXML file 'primary.fxml'.";
-        assert w2I != null : "fx:id=\"w2I\" was not injected: check your FXML file 'primary.fxml'.";
-        assert w2II != null : "fx:id=\"w2II\" was not injected: check your FXML file 'primary.fxml'.";
-        assert w2III != null : "fx:id=\"w2III\" was not injected: check your FXML file 'primary.fxml'.";
-        assert w2IV != null : "fx:id=\"w2IV\" was not injected: check your FXML file 'primary.fxml'.";
-        assert w2V != null : "fx:id=\"w2V\" was not injected: check your FXML file 'primary.fxml'.";
+    @FXML
+    private MenuButton mBtnStartPos2;
+
+    @FXML
+    private TextField tfrein;
+
+    @FXML
+    private TextField tfcodiert;
+
+    @FXML
+    private TextField tfKenngruppe;
+
+    @FXML
+    private MenuButton mBtnNotchPos1;
+
+    @FXML
+    void gedrueckteTaste() {
+    }
+
+    @FXML
+    void btnempfangen() {
+    }
+
+    @FXML
+    void btnsenden() {
     }
 
+    /**
+     * Methode zum setzen des menuButton Textes auf das ausgewählte MenuItem
+     * @param mb : MenuButton der Walze
+     * @param mi : MenuItem
+     */
+    private void listener(MenuButton mb, MenuItem mi){
+        mb.setText(mi.getText());
+    }
+
+    /**
+     * Methode zur Erstellung der Einträge und Action Listener für die einzelnen Menüs
+     * @param button : Button für die die Einträge erstellt werden sollen
+     */
+    private void menu(MenuButton button, String[] str) {
+       mItem = new ArrayList<>();
+        for (int i = 0; i < str.length; i++) {
+            //Eintrag aus str der Arraylist mi hinzufügen
+            mItem.add(new MenuItem(str[i]));
+            //MenuItem mi dem Button button hinzufügen
+            button.getItems().add(mItem.get(i));
+            int finalI = i;
+            //Listener für die einzelnen Einträge
+            ArrayList<MenuItem> finalMi = mItem;
+            mItem.get(i).setOnAction(e -> {
+                listener(button, finalMi.get(finalI));
+            });
+        }
+    }
+    @FXML
+    void initialize() {
+        //Einträge für Walzen
+        menu(mBtnWalzPos1, str);
+        menu(mBtnWalzPos2, str);
+        menu(mBtnWalzPos3, str);
+        //Einträge für die Ringe
+        menu(mBtnNotchPos1, num);
+        menu(mBtnNotchPos2, num);
+        menu(mBtnNotchPos3, num);
+        //Einträge für die Startpositionen
+        menu(mBtnStartPos1, bs);
+        menu(mBtnStartPos3, bs);
+        menu(mBtnStartPos2, bs);
+
+        assert btnL != null : "fx:id=\"btnL\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnP != null : "fx:id=\"btnP\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnY != null : "fx:id=\"btnY\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnX != null : "fx:id=\"btnX\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnC != null : "fx:id=\"btnC\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnV != null : "fx:id=\"btnV\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnB != null : "fx:id=\"btnB\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnN != null : "fx:id=\"btnN\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnM != null : "fx:id=\"btnM\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnA != null : "fx:id=\"btnA\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnS != null : "fx:id=\"btnS\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnD != null : "fx:id=\"btnD\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnF != null : "fx:id=\"btnF\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnG != null : "fx:id=\"btnG\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnH != null : "fx:id=\"btnH\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnJ != null : "fx:id=\"btnJ\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnK != null : "fx:id=\"btnK\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnQ != null : "fx:id=\"btnQ\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnW != null : "fx:id=\"btnW\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnE != null : "fx:id=\"btnE\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnR != null : "fx:id=\"btnR\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnT != null : "fx:id=\"btnT\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnZ != null : "fx:id=\"btnZ\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnU != null : "fx:id=\"btnU\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnI != null : "fx:id=\"btnI\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnO != null : "fx:id=\"btnO\" was not injected: check your FXML file 'gui.fxml'.";
+        assert btnLöschen != null : "fx:id=\"btnLöschen\" was not injected: check your FXML file 'gui.fxml'.";
+        assert mBtnWalzPos1 != null : "fx:id=\"mBtnWalzPos1\" was not injected: check your FXML file 'gui.fxml'.";
+        assert mBtnWalzPos3 != null : "fx:id=\"mBtnWalzPos3\" was not injected: check your FXML file 'gui.fxml'.";
+        assert mBtnWalzPos2 != null : "fx:id=\"mBtnWalzPos2\" was not injected: check your FXML file 'gui.fxml'.";
+        assert mBtnNotchPos3 != null : "fx:id=\"mBtnNotchPos3\" was not injected: check your FXML file 'gui.fxml'.";
+        assert mBtnNotchPos2 != null : "fx:id=\"mBtnNotchPos2\" was not injected: check your FXML file 'gui.fxml'.";
+        assert mBtnStartPos1 != null : "fx:id=\"mBtnStartPos1\" was not injected: check your FXML file 'gui.fxml'.";
+        assert mBtnStartPos3 != null : "fx:id=\"mBtnStartPos3\" was not injected: check your FXML file 'gui.fxml'.";
+        assert mBtnStartPos2 != null : "fx:id=\"mBtnStartPos2\" was not injected: check your FXML file 'gui.fxml'.";
+        assert tfrein != null : "fx:id=\"tfrein\" was not injected: check your FXML file 'gui.fxml'.";
+        assert tfcodiert != null : "fx:id=\"tfcodiert\" was not injected: check your FXML file 'gui.fxml'.";
+        assert tfKenngruppe != null : "fx:id=\"tfKenngruppe\" was not injected: check your FXML file 'gui.fxml'.";
+        assert mBtnNotchPos1 != null : "fx:id=\"mBtnNotchPos1\" was not injected: check your FXML file 'gui.fxml'.";
+
+    }
+
+//    /**
+//     * Setzt die Anzeige des entsprechende Gui-Element auf die entsprechende Walze
+//     *
+//     * @param walze => gibt die Walzennummer an (entspricht
+//     * @param position => gibt die Position der Walze (entspricht
+//     */
+//    public void setzeWalze(int walze, int position){
+//        switch (position){
+//            case 1:
+//              //  mBtnWalzPos1.setText();
+//                break;
+//            case 2:
+//                break;
+//            case 3:
+//                break;
+//        }
+//
+//
+//    }
 }
diff --git a/src/main/java/Enigma/Main.java b/src/main/java/Enigma/Main.java
index 2bfc594ce53b57275c180938447de3ea3a866f17..4f2fece9c79475a0e712dcdf5f8c80ff91641626 100644
--- a/src/main/java/Enigma/Main.java
+++ b/src/main/java/Enigma/Main.java
@@ -1,8 +1,5 @@
 package Enigma;
 
-import Enigma.model.Codebuch;
-import Enigma.model.DatenbankSqlite;
-import Enigma.model.Morsecode;
 
 import java.sql.SQLException;
 
diff --git a/src/main/java/Enigma/model/Reflektor.java b/src/main/java/Enigma/model/Reflektor.java
index cc7c69dc5d6291056189ae515715aa2ddb1356a1..a3069b863341a420aa9e30cd70620d8d043706c6 100644
--- a/src/main/java/Enigma/model/Reflektor.java
+++ b/src/main/java/Enigma/model/Reflektor.java
@@ -2,10 +2,10 @@ package Enigma.model;
 
 /**
  * Klasse Reflektor
- *
+ * <p>
  * Der Reflektor nimmt einen Buchstaben der Klasse Walze entgegen und und kodiert diesen.
  * Der kodierte Buchstabe wird an die Klasse Walze wieder zurückgegeben.
- *
+ * <p>
  * Prinzipiell verhält sich die Klasse Refelktor wie die Klasse Walze, außer das sie sich
  * nach Betätigung einer Taste nicht dreht (starr montiert) und sie gibt keine Signale
  * an andere Walzen zum drehen.
@@ -14,70 +14,38 @@ public class Reflektor {
 
     /**
      * Konstanten und Variablen der Klasse Reflektor
-     *
+     * <p>
      * WALZE_ALPHABET : konstanter Char-Array mit den Werten des Alphabeths (26 Werte)
      * WALZE_REFLEKTOR : konstanter Char-Array mit den Werten des Reflektors (26 Werte)
      * reflektorBuchstabeRein : Character mit dem an die Klasse übergebenen Character
      * reflektorBuchstabeRaus : Character nach der Codierung in der Klasse Reflektor
      * iPositionReflektor : Integer mit der Positionsnummer des Characters im Array
      */
-    private final Character[] WALZE_ALPHABET = {'A','B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'};
-    private final Character[] WALZE_REFLEKTOR= {'E', 'J', 'M', 'Z', 'A', 'L', 'Y', 'X', 'V', 'B', 'W', 'F', 'C', 'R', 'Q', 'U', 'O', 'N', 'T', 'S', 'P', 'I', 'K', 'H', 'G', 'D'};
-    private Character reflektorBuchstabeRein;
-    private Character reflektorBuchstabeRaus;
-    private int iPositionReflektor;
+    private final Character[] WALZE_ALPHABET = {'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'};
+    private final Character[] WALZE_REFLEKTOR = {'E', 'J', 'M', 'Z', 'A', 'L', 'Y', 'X', 'V', 'B', 'W', 'F', 'C', 'R', 'Q', 'U', 'O', 'N', 'T', 'S', 'P', 'I', 'K', 'H', 'G', 'D'};
 
 
     /**
      * Funktion Codiere
-     *
+     * <p>
      * Durchsucht das konstante Char-Array WALZE_ALPHABET nach der Position eines bestimmten
      * Buchstabens und gibt den Character an der entsprechenden Position im konstanten
      * Char-Array WALZE_REFLEKTOR zurück.
      *
      * @return reflektorBuchstabeRaus: Character: Der kodierte Buchstabe aus dem Reflektor
      */
-    public char codiere (){
-        int index = 0;
+    public char codiere(Character buchstabe) {
+        int iPositionReflektor = 0;
 
         /*Ermittelt die Position des Buchstaben buchstabe auf der Alphabetswalze*/
-        for(index = 0; index < WALZE_ALPHABET.length; index++) {
-            if(getReflektorBuchstabeRein().equals(WALZE_ALPHABET[index])) {
+        for (int index = 0; index < WALZE_ALPHABET.length; index++) {
+            if (buchstabe.equals(WALZE_ALPHABET[index])) {
                 iPositionReflektor = index;
                 break;
             }
         }
         /*Im Char-Array WALZE_REFLEKTOR wird der Character an der Position iPositionReflektor ausgegeben*/
-        reflektorBuchstabeRaus = WALZE_REFLEKTOR[iPositionReflektor];
-        return reflektorBuchstabeRaus;
-    }
-
-    /**
-     * Getter getReflektorBuchstabeRein
-     *
-     * Gibt den Wert der Variablen reflektorBuchstabeRein zurück
-     *
-     * @return reflektorBuchstabeRein: Character: gibt den Buchstaben zurück
-     */
-    public Character getReflektorBuchstabeRein() {
-        return reflektorBuchstabeRein;
-    }
-
-
-    /**
-     * Setter setReflektorBuchstabeRein
-     *
-     * Setzt den Wert der Variablen reflektorBuchstabeRein
-     *
-     * @param reflektorBuchstabeRein: Character: setzt den Wert des Buchstabens
-     */
-    public void setReflektorBuchstabeRein(Character reflektorBuchstabeRein) {
-        if (Character.isLetter(reflektorBuchstabeRein)){
-            this.reflektorBuchstabeRein = reflektorBuchstabeRein;
-        } else{
-            System.err.println("Kein Buchstabe übergeben im Reflektor");
-        }
-
+        return WALZE_REFLEKTOR[iPositionReflektor];
     }
 
 }
diff --git a/src/main/java/Enigma/model/Steckbrett.java b/src/main/java/Enigma/model/Steckbrett.java
new file mode 100644
index 0000000000000000000000000000000000000000..d4c503af76d16371f4791c3e6cdf2e6552aaa766
--- /dev/null
+++ b/src/main/java/Enigma/model/Steckbrett.java
@@ -0,0 +1,77 @@
+package Enigma.model;
+
+/**
+ *
+ */
+public class Steckbrett {
+    /**
+     *
+     */
+    private int zaehler;
+    private Character[] orginalBuchstaben;
+    private Character[] getauschteBuchstaben;
+
+    /**
+     *
+     */
+    public Steckbrett() {
+
+        orginalBuchstaben = new Character[10];
+        getauschteBuchstaben = new Character[10];
+    }
+
+
+    /**
+     *
+     * @param buchstabe1
+     * @param buchstabe2
+     * @return
+     */
+    public boolean setzeVertauschung(char buchstabe1, char buchstabe2) {
+
+        if (zaehler < orginalBuchstaben.length) {
+            orginalBuchstaben[zaehler] = buchstabe1;
+            getauschteBuchstaben[zaehler++] = buchstabe2;
+        } else {
+            System.err.println("Zu viele Vertauschungen angegeben!");
+        }
+
+        return ueberpruefeVertauschungen();
+    }
+
+    /**
+     *
+     * @return
+     */
+    public boolean ueberpruefeVertauschungen() {
+
+        boolean result = true;
+        for (int n = 0; n < orginalBuchstaben.length; n++) {
+            if (orginalBuchstaben.equals(orginalBuchstaben[n]) || getauschteBuchstaben.equals(orginalBuchstaben[n]) || getauschteBuchstaben.equals(getauschteBuchstaben[n])) {
+                System.err.println("Vertauschungen enthalten unzulässige Dopplungen");
+                result = false;
+            }
+        }
+
+        return result;
+    }
+
+    /**
+     * 
+     * @param buchstabe
+     * @return
+     */
+    public char codiere(Character buchstabe) {
+
+        for (int index = 0; index < getauschteBuchstaben.length; index++) {
+            if (buchstabe.equals(getauschteBuchstaben[index])) {
+                buchstabe = orginalBuchstaben[index];
+            } else if (buchstabe.equals(orginalBuchstaben[index])) {
+                buchstabe = getauschteBuchstaben[index];
+            }
+        }
+
+        return buchstabe;
+    }
+
+}
diff --git a/src/main/java/Enigma/model/Walze.java b/src/main/java/Enigma/model/Walze.java
index 9ad536e3a3a67ec8f1f75500d4c66799aa893614..86cf8f4e1e8a76861c3aca23ea5dfef415816121 100644
--- a/src/main/java/Enigma/model/Walze.java
+++ b/src/main/java/Enigma/model/Walze.java
@@ -1,7 +1,31 @@
 package Enigma.model;
 
+/**
+ * Klasse Walze
+ *
+ * Erzeugt ein Objekt des Typs Walze mit den Eigenschaften:
+ *
+ * 1. Walzennummer (Die Walze enthält die 26 Buchstaben des Alphabeths und codiert diese.
+ * 5 verschiedene Walzen stehen zur Auswahl, die jeweils verschieden die Buchstaben des Alphabeths
+ * paarweise vertauschen)
+ *
+ * 2. Ringstellung (Umspringpunkt der Walze wird festgelegt. Der Umspringpunkt bestimmt
+ * den Drehzeitpunkt der linken Nachbarwalze)
+ *
+ */
 public class Walze {
 
+    /**
+     * Konstanten und Variablen der Klasse Walze
+     *
+     * buchstabe : Bestimmt den Buchstaben
+     * ringstellung : Bestimmt den Umspringpunkt der Walze
+     * walzennr : Bestimmt die Walzennr. (also wie der Buchstabe codiert wird)
+     * iPositionBuchstabe : gibt die Position des Buchstabens auf dem Array der Walze wieder.
+     * iPositionBuchstabeRe : gibt die Position des codierten Buchstabens im Alphabet wieder.
+     * private Character[] walze : Character-Array der Walze
+     */
+
     private Character buchstabe;
     private Character ringstellung;
     private int walzennr;
@@ -9,86 +33,21 @@ public class Walze {
     private int iPositionBuchstabeRe;
     private Character[] walze;
 
+
+
     /**
      * Gibt die Parameter der Walze mit
      *
      * @param walzennr : int : Nummer der gewaehlten Walze
-     * @param buchstabe : Character : Grundeinstellung der Walze
      * @param ringstellung : Character : Einstellung des Notch
      */
-    public Walze(int walzennr, Character buchstabe, Character ringstellung) {
+    public Walze(int walzennr, Character ringstellung) {
         this.walze = new Character[25];
         this.walzennr = walzennr;
-        this.buchstabe = buchstabe;
+        this.buchstabe = 'A';
         this.ringstellung = ringstellung;
     }
 
-    /**
-     * @return buchstabe : Character : gibt den neuen Buchstaben zurueck
-     */
-    public Character getBuchstabe() {
-        return buchstabe;
-    }
-
-    /**
-     * Gibt die Grundeinstellung der Walze ein. Nur Buchstaben von A - Z sind zugelassen.
-     * Buchstaben werden automatisch in Grossbuchstaben umgewandelt.
-     * Im Fehlerfall wird die Grundeinstellung der Walze standardmaessig auf 'A' gesetzt.
-     *
-     * @param buchstabe : Character : Grundeinstellung der Walze
-     */
-    public void setBuchstabe(Character buchstabe) {
-
-        if(Character.isLetter(buchstabe)) {
-            this.buchstabe = Character.toUpperCase(buchstabe);
-        } else {
-            this.buchstabe = 'A';
-        }
-    }
-
-    /**
-     * @return ringstellung : Character : gibt die neue Ringstellung zurueck
-     */
-    public Character getRingstellung() {
-        return ringstellung;
-    }
-
-
-    /**
-     * Gibt die Initiale Ringstellung der Walze an.
-     * Es sind nur Zahlen von 1 - 26 zugelassen.
-     * Im Fehlerfall wird die Ringstellung standardmaessig auf '1' gesetzt.
-     *
-     * @param ringstellung : Character : Punkt an dem die Walze umspringt
-     */
-    public void setRingstellung(Character ringstellung) {
-
-        if(Character.isDigit(ringstellung) && ringstellung > 0 && ringstellung <= 26) {
-            this.ringstellung = ringstellung;
-        } else {
-            this.ringstellung = '1';
-        }
-    }
-
-    /**
-     * @return walzennr : int : gibt die Walzennummer zurueck
-     */
-    public int getWalzennr() {
-        return walzennr;
-    }
-
-    /**
-     * Definiert die Walze. Es stehen fuenf Walze zur Auswahl.
-     *
-     * @param walzennr : int : setzt die Walzennummer
-     */
-    public void setWalzennr(int walzennr) {
-        if(walzennr > 0 && walzennr < 6) {
-            this.walzennr = walzennr;
-        } else {
-            System.err.println("Keine gültige Walzennummer");
-        }
-    }
 
     /**
      * Sortiert den Walzennummern das passenden Character-Array mittels switch zu.
@@ -104,7 +63,7 @@ public class Walze {
         Character[] walzeVier = {'E', 'S', 'O', 'V', 'P', 'Z', 'J', 'A', 'Y', 'Q', 'U', 'I', 'R', 'H', 'X', 'L', 'N', 'F', 'T', 'G', 'K', 'D', 'C', 'M', 'W', 'B'};
         Character[] walzeFuenf = {'V', 'Z', 'B', 'R', 'G', 'I', 'T', 'Y', 'U', 'P', 'S', 'D', 'N', 'H', 'L', 'X', 'A', 'W', 'M', 'J', 'Q', 'O', 'F', 'E', 'C', 'K'};
 
-        switch (getWalzennr()) {
+        switch (walzennr) {
             case 1:
                 walze = walzeEins;
                 break;
@@ -125,95 +84,163 @@ public class Walze {
         return walze;
     }
 
-    /**
-     * Ermittelt die Position des Buchstaben auf der Alphabetswalze, um die Position mit
-     * der Chiffrierung auf der gewaehlten Walze abgleichen zu koennen.
-     *
-     * @return iPositionBuchstabe : int : Position des Buchstaben im Array
-     */
-    public int positionBuchstabe() {
+
+
+    //walzenPosition() return int => Gibt die aktuelle Position des Buchstabens zurück
+    public int walzenPosition() {
 
         /*Alphabetswalze*/
-        Character[] walzeAlpha = {'A','B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'};
+        Character[] walzeAlphabeth = {'A','B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'};
 
         /*Ermittelt die Position des Buchstaben buchstabe auf der Alphabetswalze*/
-        for(int index = 0; index < walzeAlpha.length; index++) {
-            if(getBuchstabe().equals(walzeAlpha[index])) {
+        for(int index = 0; index < walzeAlphabeth.length; index++) {
+            if(getBuchstabe().equals(walzeAlphabeth[index])) {
                 iPositionBuchstabe = index;
                 break;
             }
         }
-
         return iPositionBuchstabe;
     }
 
 
+    //setzeNotch(int position) => Setze Startpunkt auf int Position des Buchstabens
+    // Setter für Ringstellung
     /**
-     * Chiffriert den Buchstaben an der Position aus der Methode positionBuchstabe()
-     * anhand der gewaehlten Walze.
+     * Gibt die Initiale Ringstellung der Walze an.
+     * Es sind nur Zahlen von 1 - 26 zugelassen.
+     * Im Fehlerfall wird die Ringstellung standardmaessig auf '1' gesetzt.
      *
-     * @param iPositionBuchstabe : int : Position des zu chiffrierenden Buchstabens
-     * @param walze : Character[] : ausgewaehlte Walze
-     * @return chiffrierterBuchstabe : Character : chiffrierter Buchstabe
+     * @param ringstellung : Character : Punkt an dem die Walze umspringt
      */
-    public Character codiereBuchstabe(int iPositionBuchstabe, Character[] walze) {
-        Character codierterBuchstabe = walze[iPositionBuchstabe];
-        return codierterBuchstabe;
-    }
+    public void setRingstellung(Character ringstellung) {
 
+        if(Character.isDigit(ringstellung) && ringstellung > 0 && ringstellung <= 26) {
+            this.ringstellung = ringstellung;
+        } else {
+            this.ringstellung = '1';
+        }
+    }
 
     /**
-     * Nimmt die Startposition, die aus der Walzeneinstellung geholt wird und
-     * erhoeht sie um eins.
-     * Die Variable wird ueberschrieben und zaehlt von nun an die Position mit.
-     * Ab Position 25 wird wieder bei 0 angefangen.
-     *
-     * @param iPositionBuchstabe : int : alte Position der Walze
-     * @return iPositionBuchstabe : int : neue Position der Walze
+     * @return ringstellung : Character : gibt die neue Ringstellung zurueck
      */
-    public int vorstellenDerWalze(int iPositionBuchstabe) {
+    public Character getRingstellung() {
+        return ringstellung;
+    }
 
-        if(iPositionBuchstabe == 25) {
-            iPositionBuchstabe = 0;
-        } else {
-            iPositionBuchstabe += 1;
+
+
+    //dreheWalze() return boolean => Wenn Notch erreicht, gib true zurück, ansonsten false
+        public boolean dreheWalze(){
+
+        boolean checkRing;
+
+            if(iPositionBuchstabe == 25) {
+
+                iPositionBuchstabe = 0;
+
+            } else {
+
+                iPositionBuchstabe += 1;
+            }
+
+        if (iPositionBuchstabe == getRingstellung()){
+
+            checkRing = true;
+
+        }else{
+
+            checkRing = false;
         }
 
-        return iPositionBuchstabe;
+        return checkRing;
     }
 
+
+    //codiere(char buchstabe) return char => Gibt den verschlüsselten Buchstaben zurück
     /**
-     * Ermittelt die Position des Buchstaben auf der gewaehlten Walze, um die Position mit
-     * der Chiffrierung auf der AlphaWalze abgleichen zu koennen.
+     * Chiffriert den Buchstaben an der Position aus der Methode positionBuchstabe()
+     * anhand der gewaehlten Walze.
      *
-     * @param walzennr : int : gibt die gewaehlte Walze zurueck
-     * @return iPositionBuchstabeRe : int : Position des Buchstaben im Array
+     * @param
+     * @return chiffrierterBuchstabe : Character : chiffrierter Buchstabe
      */
-    public int positionBuchstabeReverse(int walzennr) {
-
-        /*Ermittelt die Position des Buchstaben buchstabe auf der Alphabetswalze*/
-        for(int index = 0; index < walze.length; index++) {
-            if(getBuchstabe().equals(walze[index])) {
-                iPositionBuchstabeRe = index;
-                break;
-            }
-        }
-        return iPositionBuchstabeRe;
+    public Character codiere(Character buchstabe) {
+        setBuchstabe(buchstabe);
+        walzenPosition();
+        Character codierterBuchstabe = walzenNummer()[iPositionBuchstabe];
+        return codierterBuchstabe;
     }
 
+
+    //codiere2(char buchstabe) => Gibt den vertauschten Buchstaben zurück (Reverse)
     /**
      * Chiffriert den Buchstaben an der Position aus der Methode positionBuchstabeReverse()
      * anhand der AlphaWalze.
      *
-     * @param iPositionBuchstabeRe : int : Position des zu chiffrierenden Buchstabens
+     * @param
      * @return codierterBuchstabeRe : Character : chiffrierter Buchstabe
      */
-    public Character codierterBuchstabeReverse(int iPositionBuchstabeRe) {
+    public Character codiere2(char buchstabe) {
+
         /*Alphawalze*/
         Character[] walzeAlpha = {'A','B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'};
 
+        setBuchstabe(buchstabe);
+
+        /*Ermittelt die Position des Buchstaben buchstabe auf der Alphabetswalze*/
+        for(int index = 0; index < walzenNummer().length; index++) {
+            if(getBuchstabe().equals(walzenNummer()[index])) {
+                iPositionBuchstabeRe = index;
+                break;
+            }
+        }
+
         Character codierterBuchstabeRe = walzeAlpha[iPositionBuchstabeRe];
         return codierterBuchstabeRe;
+
+
+    }
+
+//_________________________________________________________________________________________
+
+
+    /**
+     * @return buchstabe : Character : gibt den neuen Buchstaben zurueck
+     */
+    public Character getBuchstabe() {
+        return buchstabe;
+    }
+
+    /**
+     * Gibt die Grundeinstellung der Walze ein. Nur Buchstaben von A - Z sind zugelassen.
+     * Buchstaben werden automatisch in Grossbuchstaben umgewandelt.
+     * Im Fehlerfall wird die Grundeinstellung der Walze standardmaessig auf 'A' gesetzt.
+     *
+     * @param buchstabe : Character : Grundeinstellung der Walze
+     */
+    public void setBuchstabe(Character buchstabe) {
+
+        if(Character.isLetter(buchstabe)) {
+            this.buchstabe = Character.toUpperCase(buchstabe);
+        } else {
+            this.buchstabe = 'A';
+        }
+    }
+
+
+    //TODO: ??? Brauchen wir Setter, wo findet Überprüfung der Walzennr. statt.
+    /**
+     * Definiert die Walze. Es stehen fuenf Walze zur Auswahl.
+     *
+     * @param walzennr : int : setzt die Walzennummer
+     */
+    public void setWalzennr(int walzennr) {
+        if(walzennr > 0 && walzennr < 6) {
+            this.walzennr = walzennr;
+        } else {
+            System.err.println("Keine gültige Walzennummer");
+        }
     }
 
 }
diff --git a/src/main/resources/Enigma/gui.fxml b/src/main/resources/Enigma/gui.fxml
index ae2b648dd67c8856ee83f5a43d166affc882a42a..e196eeb372928689afae3f8a86b530dc278f28ac 100644
--- a/src/main/resources/Enigma/gui.fxml
+++ b/src/main/resources/Enigma/gui.fxml
@@ -4,7 +4,6 @@
 <?import javafx.scene.control.ButtonBar?>
 <?import javafx.scene.control.Label?>
 <?import javafx.scene.control.MenuButton?>
-<?import javafx.scene.control.MenuItem?>
 <?import javafx.scene.control.TextField?>
 <?import javafx.scene.layout.AnchorPane?>
 
@@ -22,41 +21,41 @@
       <TextField layoutX="693.0" layoutY="625.0" prefHeight="25.0" prefWidth="48.0" />
       <ButtonBar layoutX="31.0" layoutY="570.0" prefHeight="36.0" prefWidth="860.0">
         <buttons>
-            <Button mnemonicParsing="false" text="L" />
-            <Button mnemonicParsing="false" text="P" />
-            <Button mnemonicParsing="false" text="Y" />
-          <Button mnemonicParsing="false" text="X" />
-            <Button mnemonicParsing="false" text="C" />
-            <Button mnemonicParsing="false" text="V" />
-            <Button mnemonicParsing="false" text="B" />
-            <Button mnemonicParsing="false" text="N" />
-            <Button mnemonicParsing="false" text="M" />
+            <Button fx:id="btnL" mnemonicParsing="false" onAction="#gedrueckteTaste" text="L" />
+            <Button fx:id="btnP" mnemonicParsing="false" onAction="#gedrueckteTaste" text="P" />
+            <Button fx:id="btnY" mnemonicParsing="false" onAction="#gedrueckteTaste" text="Y" />
+          <Button fx:id="btnX" mnemonicParsing="false" onAction="#gedrueckteTaste" text="X" />
+            <Button fx:id="btnC" mnemonicParsing="false" onAction="#gedrueckteTaste" text="C" />
+            <Button fx:id="btnV" mnemonicParsing="false" onAction="#gedrueckteTaste" text="V" />
+            <Button fx:id="btnB" mnemonicParsing="false" onAction="#gedrueckteTaste" text="B" />
+            <Button fx:id="btnN" mnemonicParsing="false" onAction="#gedrueckteTaste" text="N" />
+            <Button fx:id="btnM" mnemonicParsing="false" onAction="#gedrueckteTaste" text="M" />
         </buttons>
       </ButtonBar>
       <ButtonBar layoutX="15.0" layoutY="534.0" prefHeight="36.0" prefWidth="860.0">
          <buttons>
-            <Button mnemonicParsing="false" text="A" />
-            <Button mnemonicParsing="false" text="S" />
-            <Button mnemonicParsing="false" text="D" />
-            <Button mnemonicParsing="false" text="F" />
-            <Button mnemonicParsing="false" text="G" />
-            <Button mnemonicParsing="false" text="H" />
-            <Button mnemonicParsing="false" text="J" />
-            <Button mnemonicParsing="false" text="K" />
+            <Button fx:id="btnA" mnemonicParsing="false" onAction="#gedrueckteTaste" text="A" />
+            <Button fx:id="btnS" mnemonicParsing="false" onAction="#gedrueckteTaste" text="S" />
+            <Button fx:id="btnD" mnemonicParsing="false" onAction="#gedrueckteTaste" text="D" />
+            <Button fx:id="btnF" mnemonicParsing="false" onAction="#gedrueckteTaste" text="F" />
+            <Button fx:id="btnG" mnemonicParsing="false" onAction="#gedrueckteTaste" text="G" />
+            <Button fx:id="btnH" mnemonicParsing="false" onAction="#gedrueckteTaste" text="H" />
+            <Button fx:id="btnJ" mnemonicParsing="false" onAction="#gedrueckteTaste" text="J" />
+            <Button fx:id="btnK" mnemonicParsing="false" onAction="#gedrueckteTaste" text="K" />
          </buttons>
       </ButtonBar>
       <ButtonBar layoutX="22.0" layoutY="491.0" prefHeight="25.0" prefWidth="583.0">
          <buttons>
-            <Button minWidth="13.0" mnemonicParsing="false" prefHeight="25.0" text="Q" />
-            <Button mnemonicParsing="false" text="W" />
-            <Button mnemonicParsing="false" text="E" />
-            <Button mnemonicParsing="false" text="R" />
-            <Button mnemonicParsing="false" text="T" />
-            <Button mnemonicParsing="false" text="Z" />
-            <Button mnemonicParsing="false" text="U" />
-            <Button mnemonicParsing="false" text="I" />
-            <Button mnemonicParsing="false" text="O" />
-            <Button mnemonicParsing="false" text="Löschen" />
+            <Button fx:id="btnQ" minWidth="13.0" mnemonicParsing="false" onAction="#gedrueckteTaste" prefHeight="25.0" text="Q" />
+            <Button fx:id="btnW" mnemonicParsing="false" onAction="#gedrueckteTaste" text="W" />
+            <Button fx:id="btnE" mnemonicParsing="false" onAction="#gedrueckteTaste" text="E" />
+            <Button fx:id="btnR" mnemonicParsing="false" onAction="#gedrueckteTaste" text="R" />
+            <Button fx:id="btnT" mnemonicParsing="false" onAction="#gedrueckteTaste" text="T" />
+            <Button fx:id="btnZ" mnemonicParsing="false" onAction="#gedrueckteTaste" text="Z" />
+            <Button fx:id="btnU" mnemonicParsing="false" onAction="#gedrueckteTaste" text="U" />
+            <Button fx:id="btnI" mnemonicParsing="false" onAction="#gedrueckteTaste" text="I" />
+            <Button fx:id="btnO" mnemonicParsing="false" onAction="#gedrueckteTaste" text="O" />
+            <Button fx:id="btnLöschen" mnemonicParsing="false" text="Löschen" />
          </buttons>
       </ButtonBar>
       <ButtonBar layoutX="39.0" layoutY="418.0" prefHeight="36.0" prefWidth="860.0">
@@ -97,32 +96,11 @@
             <Button mnemonicParsing="false" text="O" />
          </buttons>
       </ButtonBar>
-      <MenuButton fx:id="w1" layoutX="91.0" layoutY="76.0" mnemonicParsing="false" text="I">
-<!--        <items>-->
-<!--          <MenuItem fx:id="w1I" mnemonicParsing="false" onAction="#w1I" text="I" />-->
-<!--          <MenuItem fx:id="w1II" mnemonicParsing="false" onAction="#w1II" text="II" />-->
-<!--           <MenuItem fx:id="w1III" mnemonicParsing="false" onAction="#w1III" text="III" />-->
-<!--            <MenuItem fx:id="w1IV" mnemonicParsing="false" onAction="#w1IV" text="IV" />-->
-<!--            <MenuItem fx:id="w1V" mnemonicParsing="false" onAction="#w1V" text="V" />-->
-<!--        </items>-->
+      <MenuButton fx:id="mBtnWalzPos1" layoutX="91.0" layoutY="76.0" mnemonicParsing="false" text="I">
       </MenuButton>
-      <MenuButton fx:id="w3" layoutX="171.0" layoutY="76.0" mnemonicParsing="false" text="I">
-         <items>
-            <MenuItem fx:id="w3I" mnemonicParsing="false" onAction="#w3I" text="I" />
-            <MenuItem fx:id="w3II" mnemonicParsing="false" onAction="#w3II" text="II" />
-            <MenuItem fx:id="w3III" mnemonicParsing="false" onAction="#w3III" text="III" />
-            <MenuItem fx:id="w3IV" mnemonicParsing="false" onAction="#w3IV" text="IV" />
-            <MenuItem fx:id="w3V" mnemonicParsing="false" onAction="#w3V" text="V" />
-         </items>
+      <MenuButton fx:id="mBtnWalzPos3" layoutX="171.0" layoutY="76.0" mnemonicParsing="false" text="I">
       </MenuButton>
-      <MenuButton fx:id="w2" layoutX="133.0" layoutY="76.0" mnemonicParsing="false" text="I">
-         <items>
-            <MenuItem fx:id="w2I" mnemonicParsing="false" onAction="#w2I" text="I" />
-            <MenuItem fx:id="w2II" mnemonicParsing="false" onAction="#w2II" text="II" />
-            <MenuItem fx:id="w2III" mnemonicParsing="false" onAction="#w2III" text="III" />
-            <MenuItem fx:id="w2IV" mnemonicParsing="false" onAction="#w2IV" text="IV" />
-            <MenuItem fx:id="w2V" mnemonicParsing="false" onAction="#w2V" text="V" />
-         </items>
+      <MenuButton fx:id="mBtnWalzPos2" layoutX="133.0" layoutY="76.0" mnemonicParsing="false" text="I">
       </MenuButton>
 <!--      <MenuButton layoutX="93.0" layoutY="114.0" mnemonicParsing="false">-->
 <!--         <items>-->
@@ -154,47 +132,26 @@
 <!--            <MenuItem mnemonicParsing="false" onAction="#z26" text="26" />-->
 <!--         </items>-->
 <!--      </MenuButton>-->
-      <MenuButton layoutX="173.0" layoutY="114.0" mnemonicParsing="false">
-         <items>
-            <MenuItem mnemonicParsing="false" text="Action 1" />
-            <MenuItem mnemonicParsing="false" text="Action 2" />
-         </items>
+      <MenuButton fx:id="mBtnNotchPos3" layoutX="173.0" layoutY="114.0" mnemonicParsing="false" text="1">
       </MenuButton>
-      <MenuButton layoutX="135.0" layoutY="114.0" mnemonicParsing="false">
-         <items>
-            <MenuItem mnemonicParsing="false" text="Action 1" />
-            <MenuItem mnemonicParsing="false" text="Action 2" />
-         </items>
+      <MenuButton fx:id="mBtnNotchPos2" layoutX="135.0" layoutY="114.0" mnemonicParsing="false" text="1">
       </MenuButton>
-      <MenuButton layoutX="95.0" layoutY="157.0" mnemonicParsing="false">
-         <items>
-            <MenuItem mnemonicParsing="false" text="Action 1" />
-            <MenuItem mnemonicParsing="false" text="Action 2" />
-         </items>
+      <MenuButton fx:id="mBtnStartPos1" layoutX="95.0" layoutY="157.0" mnemonicParsing="false" text="A">
       </MenuButton>
-      <MenuButton layoutX="175.0" layoutY="157.0" mnemonicParsing="false">
-         <items>
-            <MenuItem mnemonicParsing="false" text="Action 1" />
-            <MenuItem mnemonicParsing="false" text="Action 2" />
-         </items>
+      <MenuButton fx:id="mBtnStartPos3" layoutX="175.0" layoutY="157.0" mnemonicParsing="false" text="A">
       </MenuButton>
-      <MenuButton layoutX="137.0" layoutY="157.0" mnemonicParsing="false">
-         <items>
-            <MenuItem mnemonicParsing="false" text="Action 1" />
-            <MenuItem mnemonicParsing="false" text="Action 2" />
-         </items>
+      <MenuButton fx:id="mBtnStartPos2" layoutX="137.0" layoutY="157.0" mnemonicParsing="false" text="A">
       </MenuButton>
-      <TextField layoutX="246.0" layoutY="76.0" prefHeight="77.0" prefWidth="410.0" />
-      <TextField layoutX="248.0" layoutY="182.0" prefHeight="77.0" prefWidth="410.0" />
+      <TextField fx:id="tfrein" layoutX="246.0" layoutY="76.0" prefHeight="77.0" prefWidth="410.0" />
+      <TextField fx:id="tfcodiert" layoutX="248.0" layoutY="182.0" prefHeight="77.0" prefWidth="410.0" />
       <Button layoutX="717.0" layoutY="221.0" mnemonicParsing="false" onAction="#btnsenden" prefHeight="69.0" prefWidth="164.0" text="An Funker senden" />
-      <Button layoutX="717.0" layoutY="135.0" mnemonicParsing="false" prefHeight="69.0" prefWidth="164.0" text="Funkspruch empfangen" />
-      <TextField layoutX="725.0" layoutY="76.0" />
+      <Button layoutX="717.0" layoutY="135.0" mnemonicParsing="false" onAction="#btnempfangen" prefHeight="69.0" prefWidth="164.0" text="Funkspruch empfangen" />
+      <TextField fx:id="tfKenngruppe" layoutX="725.0" layoutY="76.0" />
       <Label layoutX="727.0" layoutY="51.0" prefHeight="17.0" prefWidth="149.0" text="Kenngruppe" />
-      <MenuButton layoutX="93.0" layoutY="114.0" mnemonicParsing="false">
-         <items>
-            <MenuItem mnemonicParsing="false" text="Action 1" />
-            <MenuItem mnemonicParsing="false" text="Action 2" />
-         </items>
-      </MenuButton>
+      <MenuButton fx:id="mBtnNotchPos1" layoutX="93.0" layoutY="114.0" mnemonicParsing="false" text="1" />
+      <Label layoutX="29.0" layoutY="80.0" text="Walze" />
+      <Label layoutX="29.0" layoutY="127.0" text="Ringe" />
+      <Label layoutX="11.0" layoutY="161.0" text="Startposition" />
+      <Label layoutX="380.0" layoutY="27.0" prefHeight="17.0" prefWidth="172.0" text="Tageseinstellungen" />
    </children>
 </AnchorPane>