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.

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