diff --git a/src/main/java/no/ntnu/idatt1002/demo/controller/BudgetController.java b/src/main/java/no/ntnu/idatt1002/demo/controller/BudgetController.java
index d8f1335652f7d2d7b5a0286cf1f6bbb7d8594566..973cce1b98c40bdb06fc9fa6dab585746568227e 100644
--- a/src/main/java/no/ntnu/idatt1002/demo/controller/BudgetController.java
+++ b/src/main/java/no/ntnu/idatt1002/demo/controller/BudgetController.java
@@ -6,6 +6,8 @@ import javafx.event.ActionEvent;
 import javafx.fxml.FXML;
 import javafx.fxml.FXMLLoader;
 import javafx.scene.Node;
+import javafx.scene.Parent;
+import javafx.scene.Scene;
 import javafx.scene.control.*;
 import javafx.scene.control.Alert.AlertType;
 import javafx.scene.control.cell.PropertyValueFactory;
@@ -34,6 +36,18 @@ public class BudgetController {
     @FXML
     private Button editBudget;
 
+    @FXML
+    private Button expenseBtn;
+
+    @FXML
+    private Button incomeBtn;
+
+    @FXML
+    private Button returnBtn;
+
+    @FXML
+    private Button nextBtn;
+
     @FXML
     private TableColumn<BudgetItem, Double> amountColumn;
 
@@ -92,7 +106,7 @@ public class BudgetController {
             dialogTitle = "New Budget";
 
         }
-        else if (event.getSource().equals(editBudget)) {
+        else if (event.getSource().equals(editBudget) && budgetTableView.getSelectionModel().getSelectedItem() != null) {
             dialogMode = DialogMode.EDIT;
             dialogTitle = "Edit expense";
             item = budgetTableView.getSelectionModel().getSelectedItem();
@@ -159,4 +173,23 @@ public class BudgetController {
         this.budgetList.setAll(general.getBudgetItems());
     }
 
+   @FXML
+    public void switchScene(ActionEvent event) throws IOException {
+        //saveDataToFile("Income");
+        FXMLLoader loader = new FXMLLoader();
+        if (event.getSource() == expenseBtn) {
+            loader.setLocation(SceneController.class.getResource("/view/Expenses.fxml"));
+        } else if (event.getSource() == returnBtn) {
+            loader.setLocation(SceneController.class.getResource("/view/FirstMenu.fxml"));
+        } else if (event.getSource() == incomeBtn) {
+            loader.setLocation(SceneController.class.getResource("/view/Income.fxml"));
+        } else if (event.getSource() == nextBtn) {
+            loader.setLocation(SceneController.class.getResource("/view/MainMenu.fxml"));
+        }
+        Parent root = loader.load();
+        Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow();
+        Scene scene = new Scene(root);
+        stage.setScene(scene);
+        stage.show();
+    }
 }
diff --git a/src/main/java/no/ntnu/idatt1002/demo/controller/ExpensesController.java b/src/main/java/no/ntnu/idatt1002/demo/controller/ExpensesController.java
index abf22a6b51c336f215569961e9f54df4d4934473..feb0ab94c383862986ea91a3b245b12cfed5c99b 100644
--- a/src/main/java/no/ntnu/idatt1002/demo/controller/ExpensesController.java
+++ b/src/main/java/no/ntnu/idatt1002/demo/controller/ExpensesController.java
@@ -219,7 +219,7 @@ public class ExpensesController {
     } else if (event.getSource() == returnBtn) {
       loader.setLocation(SceneController.class.getResource("/view/FirstMenu.fxml"));
     } else if (event.getSource() == budgetBtn) {
-      loader.setLocation(SceneController.class.getResource("/view/Budget.fxml"));
+      loader.setLocation(SceneController.class.getResource("/view/BudgetNew.fxml"));
     }
       Parent root = loader.load();
       Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow();
diff --git a/src/main/java/no/ntnu/idatt1002/demo/controller/IncomeController.java b/src/main/java/no/ntnu/idatt1002/demo/controller/IncomeController.java
index d5ef44d170070507d0e0b99ab3096d757c9a3e36..1fcb3f6ce88085959499c682f3c29b8c9f15403b 100644
--- a/src/main/java/no/ntnu/idatt1002/demo/controller/IncomeController.java
+++ b/src/main/java/no/ntnu/idatt1002/demo/controller/IncomeController.java
@@ -209,7 +209,7 @@ public class IncomeController {
     } else if (event.getSource() == returnBtn) {
       loader.setLocation(SceneController.class.getResource("/view/FirstMenu.fxml"));
     } else if (event.getSource() == budgetBtn) {
-      loader.setLocation(SceneController.class.getResource("/view/Budget.fxml"));
+      loader.setLocation(SceneController.class.getResource("/view/BudgetNew.fxml"));
     }
       Parent root = loader.load();
       Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow();
diff --git a/src/main/resources/view/BudgetNew.fxml b/src/main/resources/view/BudgetNew.fxml
index c8ce2d395c1564e2d8098a8adde107fbd17b653b..a6912ef3fe657f4481a154d9a4be0c09ddc4d49b 100644
--- a/src/main/resources/view/BudgetNew.fxml
+++ b/src/main/resources/view/BudgetNew.fxml
@@ -73,7 +73,7 @@
                <children>
                   <HBox alignment="BOTTOM_LEFT" prefWidth="410.0" spacing="5.0">
                      <children>
-                        <Button fx:id="addBtn" alignment="TOP_CENTER" mnemonicParsing="false" onAction="#switchAddBudget" text="Add" textAlignment="CENTER">
+                        <Button fx:id="addBudget" alignment="TOP_CENTER" mnemonicParsing="false" onAction="#switchAddBudget" text="Add" textAlignment="CENTER">
                            <graphic>
                               <ImageView fitHeight="19.0" fitWidth="16.0" pickOnBounds="true" preserveRatio="true">
                                  <image>
@@ -82,7 +82,7 @@
                               </ImageView>
                            </graphic>
                         </Button>
-                        <Button fx:id="editBtn" alignment="TOP_CENTER" mnemonicParsing="false" onAction="#switchAddBudget" text="Edit" textAlignment="CENTER">
+                        <Button fx:id="editBudget" alignment="TOP_CENTER" mnemonicParsing="false" onAction="#switchAddBudget" text="Edit" textAlignment="CENTER">
                            <graphic>
                               <ImageView fitHeight="19.0" fitWidth="16.0" pickOnBounds="true" preserveRatio="true">
                                  <image>
@@ -122,10 +122,10 @@
                   </VBox>
                   <HBox prefHeight="100.0" prefWidth="200.0" GridPane.columnSpan="2" GridPane.rowIndex="2">
                      <children>
-                        <Button mnemonicParsing="false" text="Income" />
+                        <Button fx:id="incomeBtn" mnemonicParsing="false" onAction="#switchScene" text="Income" />
                         <Button fx:id="budgetBtn" disable="true" mnemonicParsing="false" onAction="#switchScene" text="Budget" />
                         <Button fx:id="expenseBtn" mnemonicParsing="false" onAction="#switchScene" text="Expenses" />
-                        <Button mnemonicParsing="false" onAction="#switchScene" text="Next">
+                        <Button fx:id="nextBtn" mnemonicParsing="false" onAction="#switchScene" text="Next">
                            <HBox.margin>
                               <Insets left="170.0" />
                            </HBox.margin>
@@ -135,7 +135,7 @@
                         <Insets top="10.0" />
                      </padding>
                   </HBox>
-                  <TableView fx:id="incomeTableView" prefHeight="260.0" prefWidth="485.0" GridPane.columnSpan="2" GridPane.rowIndex="1">
+                  <TableView fx:id="budgetTableView" prefHeight="260.0" prefWidth="485.0" GridPane.columnSpan="2" GridPane.rowIndex="1">
                      <columns>
                         <TableColumn fx:id="categoryColumn" prefWidth="75.0" text="Category/Title" />
                         <TableColumn fx:id="percentageColumn" prefWidth="75.0" text="Percentage" />