You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

235 lines
6.3 KiB

  1. package MeinBudgetView;
  2. import java.awt.EventQueue;
  3. import javax.swing.JFrame;
  4. import javax.swing.JPanel;
  5. import javax.swing.border.EmptyBorder;
  6. import javax.swing.JTextField;
  7. import java.awt.Image;
  8. import java.awt.event.ActionEvent;
  9. import java.awt.event.ActionListener;
  10. import javax.swing.ImageIcon;
  11. import javax.swing.JButton;
  12. import javax.swing.JLabel;
  13. import java.awt.Font;
  14. import javax.swing.JComboBox;
  15. import javax.swing.JTextArea;
  16. import java.awt.Color;
  17. import javax.swing.JSeparator;
  18. public class MeinGui extends JFrame implements ActionListener {
  19. private JPanel contentPane;
  20. private static JTextField text1;
  21. private static JTextField text2;
  22. JLabel labelBudgetImage;
  23. JLabel labelExpensesImage;
  24. JLabel labelBalancetImage;
  25. JLabel labelHauptImage;
  26. JButton senden;
  27. JButton berechne;
  28. JLabel leeren;
  29. JButton loeschen;
  30. JButton exit;
  31. private static JLabel budgetDispaly;
  32. private static JLabel expensesDisplay;
  33. private static JLabel balanceDisplay;
  34. private static int budget;
  35. private static int expenses;
  36. private static int balance;
  37. /**
  38. * Launch the application.
  39. */
  40. public static void main(String[] args) {
  41. EventQueue.invokeLater(new Runnable() {
  42. public void run() {
  43. try {
  44. MeinGui frame = new MeinGui();
  45. frame.setVisible(true);
  46. } catch (Exception e) {
  47. e.printStackTrace();
  48. }
  49. }
  50. });
  51. }
  52. /**
  53. * Create the frame.
  54. */
  55. public MeinGui() {
  56. setTitle("Budget");
  57. setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  58. setBounds(100, 100, 654, 368);
  59. contentPane = new JPanel();
  60. contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
  61. setContentPane(contentPane);
  62. contentPane.setLayout(null);
  63. this.berechne = new JButton("Berechne");
  64. berechne.setToolTipText("");
  65. berechne.setBounds(10, 281, 110, 23);
  66. contentPane.add(berechne);
  67. this.senden = new JButton("Senden");
  68. senden.setBounds(10, 145, 110, 23);
  69. contentPane.add(senden);
  70. text1 = new JTextField();
  71. text1.setBounds(10, 111, 128, 23);
  72. contentPane.add(text1);
  73. text1.setColumns(10);
  74. text2 = new JTextField();
  75. text2.setBounds(10, 246, 128, 23);
  76. contentPane.add(text2);
  77. text2.setColumns(10);
  78. labelHauptImage = new JLabel("");
  79. Image image0 = new ImageIcon(this.getClass().getResource("/budgetapp.png")).getImage();
  80. labelHauptImage.setIcon(new ImageIcon(image0));
  81. labelHauptImage.setFont(new Font("Tahoma", Font.BOLD, 13));
  82. labelHauptImage.setBounds(10, 8, 86, 61);
  83. contentPane.add(labelHauptImage);
  84. JLabel budgetEingeben = new JLabel("Budget eingeben");
  85. budgetEingeben.setFont(new Font("Estrangelo Edessa", Font.BOLD, 14));
  86. budgetEingeben.setBounds(10, 80, 110, 20);
  87. contentPane.add(budgetEingeben);
  88. JLabel labelBudget = new JLabel("Budget");
  89. labelBudget.setBounds(255, 8, 46, 14);
  90. contentPane.add(labelBudget);
  91. JLabel labelExpenses = new JLabel("Expenses");
  92. labelExpenses.setBounds(390, 8, 56, 14);
  93. contentPane.add(labelExpenses);
  94. JLabel labelBalance = new JLabel("Balance");
  95. labelBalance.setBounds(543, 8, 46, 14);
  96. contentPane.add(labelBalance);
  97. labelBudgetImage = new JLabel("");
  98. Image image1 = new ImageIcon(this.getClass().getResource("/money.png")).getImage();
  99. labelBudgetImage.setIcon(new ImageIcon(image1));
  100. labelBudgetImage.setBounds(255, 22, 46, 55);
  101. contentPane.add(labelBudgetImage);
  102. labelExpensesImage = new JLabel("");
  103. Image image2 = new ImageIcon(this.getClass().getResource("/wings-icon.png")).getImage();
  104. labelExpensesImage.setIcon(new ImageIcon(image2));
  105. labelExpensesImage.setBounds(400, 22, 46, 55);
  106. contentPane.add(labelExpensesImage);
  107. labelBalancetImage = new JLabel("New labelBalance");
  108. Image image3 = new ImageIcon(this.getClass().getResource("/Money-icon.png")).getImage();
  109. labelBalancetImage.setIcon(new ImageIcon(image3));
  110. labelBalancetImage.setBounds(543, 22, 34, 55);
  111. contentPane.add(labelBalancetImage);
  112. JLabel budgetAusgeben = new JLabel("Ausgaben");
  113. budgetAusgeben.setFont(new Font("Estrangelo Edessa", Font.BOLD, 14));
  114. budgetAusgeben.setBounds(10, 221, 63, 14);
  115. contentPane.add(budgetAusgeben);
  116. this.leeren = new JLabel("Eintr\u00E4ge leeren");
  117. leeren.setFont(new Font("Estrangelo Edessa", Font.BOLD, 14));
  118. leeren.setBounds(363, 246, 115, 14);
  119. contentPane.add(leeren);
  120. this.loeschen = new JButton("L\u00F6schen");
  121. loeschen.setBounds(368, 266, 89, 30);
  122. contentPane.add(loeschen);
  123. this.exit = new JButton("Exit\r\n");
  124. exit.setBounds(494, 266, 95, 30);
  125. contentPane.add(exit);
  126. JLabel beendne = new JLabel("Beenden");
  127. beendne.setFont(new Font("Estrangelo Edessa", Font.BOLD, 14));
  128. beendne.setBounds(508, 246, 81, 14);
  129. contentPane.add(beendne);
  130. budgetDispaly = new JLabel("0.0 \u20AC");
  131. budgetDispaly.setFont(new Font("Tahoma", Font.BOLD, 12));
  132. budgetDispaly.setBounds(255, 82, 86, 14);
  133. contentPane.add(budgetDispaly);
  134. expensesDisplay = new JLabel("0.0 \u20AC");
  135. expensesDisplay.setFont(new Font("Tahoma", Font.BOLD, 12));
  136. expensesDisplay.setBounds(390, 82, 110, 14);
  137. contentPane.add(expensesDisplay);
  138. balanceDisplay = new JLabel("0.0 \u20AC");
  139. balanceDisplay.setFont(new Font("Tahoma", Font.BOLD, 12));
  140. balanceDisplay.setBounds(543, 82, 85, 14);
  141. contentPane.add(balanceDisplay);
  142. text1.addActionListener(this);
  143. text2.addActionListener(this);
  144. senden.addActionListener(this);
  145. berechne.addActionListener(this);
  146. loeschen.addActionListener(this);
  147. exit.addActionListener(this);
  148. }
  149. @Override
  150. public void actionPerformed(ActionEvent ae) {
  151. if (ae.getSource() == this.exit) {
  152. exitButton();
  153. }
  154. if (ae.getSource() == this.loeschen) {
  155. leerButton();
  156. }
  157. budget = Integer.parseInt(text1.getText());
  158. if (ae.getSource() == this.senden && (text1 != null && text2 != null)) {
  159. BudgetView();
  160. }
  161. if (ae.getSource() == this.berechne && (text1 != null && text2 != null)) {
  162. expenses = budget - Integer.parseInt(text2.getText());
  163. expensesView();
  164. balance = Integer.parseInt(text1.getText()) - Integer.parseInt(text2.getText());
  165. balanceView();
  166. }
  167. }
  168. public void exitButton() {
  169. System.exit(0);
  170. }
  171. public static void leerButton() {
  172. text1.setText("");
  173. text2.setText("");
  174. budgetDispaly.setText("");
  175. expensesDisplay.setText("");
  176. balanceDisplay.setText("");
  177. }
  178. public static void BudgetView() {
  179. budgetDispaly.setText(budget + " €");
  180. }
  181. public static void expensesView() {
  182. expensesDisplay.setText(expenses - budget + " €");
  183. }
  184. public static void balanceView() {
  185. balanceDisplay.setText(balance + " €");
  186. }
  187. }