Mitsie007
Gebruiker
- Lid geworden
- 21 okt 2006
- Berichten
- 276
Hey hoi!
Even korte voorstel, ik ben Myrthe en doe sinds afgelopen jaar Informatica. In mijn vrije tijd ben ik aan het bijstuderen en momenteel is het vak wat ik studeer java. Puur voor de lol ben ik aan het proberen mijn programma's zo goed mogelijk te maken en zo veel mogelijk fouten eruit te halen. Helaas lukt dat niet altijd.
Misschien dat jullie mij kunnen helpen. Ik heb een rekenmachine gemaakt en die doet het. (vraag niet hoe, hahaha. ) Wat ik momenteel heel graag wil is het volgende:
op het moment dat ik 3+4 = heb getypt komt het getal 7 eruit. Daar wil ik vervolgens wel weer wat mee kunnen doen als ik op + of - o.i.d heb geklikt. Mij lukt dat momenteel nog niet zo erg, maar heb het wel geprobeerd.
Als je denkt dat je kan helpen of misschien nog tips hebt... graag! Alle reactie is welkom.
Even korte voorstel, ik ben Myrthe en doe sinds afgelopen jaar Informatica. In mijn vrije tijd ben ik aan het bijstuderen en momenteel is het vak wat ik studeer java. Puur voor de lol ben ik aan het proberen mijn programma's zo goed mogelijk te maken en zo veel mogelijk fouten eruit te halen. Helaas lukt dat niet altijd.
Misschien dat jullie mij kunnen helpen. Ik heb een rekenmachine gemaakt en die doet het. (vraag niet hoe, hahaha. ) Wat ik momenteel heel graag wil is het volgende:
op het moment dat ik 3+4 = heb getypt komt het getal 7 eruit. Daar wil ik vervolgens wel weer wat mee kunnen doen als ik op + of - o.i.d heb geklikt. Mij lukt dat momenteel nog niet zo erg, maar heb het wel geprobeerd.
Als je denkt dat je kan helpen of misschien nog tips hebt... graag! Alle reactie is welkom.
Code:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package opdr1;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Rekenmachine2 extends JFrame {
private JTextField text;
private JButton plus, min, keer, deel, correctie, isKnop;
private JButton knop[];
private JLabel auteur;
private String ingevoerd1, ingevoerd2, operator, bewaar;
private int invoer1, invoer2, uitvoer;
public Rekenmachine2() {
setLayout(new FlowLayout());
knop = new JButton[10];
operator = "";
ingevoerd1 = "";
ingevoerd2 = "";
text = new JTextField(15);
add(text);
knop[7] = new JButton("7");
add(knop[7]);
knop[7].addActionListener(new knopHandler());
knop[8] = new JButton("8");
add(knop[8]);
knop[8].addActionListener(new knopHandler());
knop[9] = new JButton("9");
add(knop[9]);
knop[9].addActionListener(new knopHandler());
min = new JButton("-");
add(min);
min.addActionListener(new operatorHandler());
knop[4] = new JButton("4");
add(knop[4]);
knop[4].addActionListener(new knopHandler());
knop[5] = new JButton("5");
add(knop[5]);
knop[5].addActionListener(new knopHandler());
knop[6] = new JButton("6");
add(knop[6]);
knop[6].addActionListener(new knopHandler());
plus = new JButton("+");
add(plus);
plus.addActionListener(new operatorHandler());
knop[1] = new JButton("1");
add(knop[1]);
knop[1].addActionListener(new knopHandler());
knop[2] = new JButton("2");
add(knop[2]);
knop[2].addActionListener(new knopHandler());
knop[3] = new JButton("3");
add(knop[3]);
knop[3].addActionListener(new knopHandler());
keer = new JButton("*");
add(keer);
keer.addActionListener(new operatorHandler());
knop[0] = new JButton("0");
add(knop[0]);
knop[0].addActionListener(new knopHandler());
deel = new JButton("/");
add(deel);
deel.addActionListener(new operatorHandler());
correctie = new JButton("C");
add(correctie);
correctie.addActionListener(new CancelHandler());
isKnop = new JButton("=");
add(isKnop);
isKnop.addActionListener(new operatorHandler());
auteur = new JLabel("Created by © Myrthe");
add(auteur);
setTitle("Rekenmachine");
setSize(200, 210);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
class knopHandler implements ActionListener {
public void actionPerformed(ActionEvent e) {
if (operator == "") {
for (int i = 0; i < 10; i++) {
if (e.getSource() == knop[i]) {
ingevoerd1 += i;
invoer1 = Integer.parseInt(ingevoerd1);
text.setText("");
text.setText("" + invoer1);
}
}
} else {
for (int i = 0; i < 10; i++) {
if (e.getSource() == knop[i]) {
ingevoerd2 += i;
invoer2 = Integer.parseInt(ingevoerd2);
text.setText("");
text.setText("" + invoer2);
}
}
}
}
}
class CancelHandler implements ActionListener {
public void actionPerformed(ActionEvent e) {
if (e.getSource() == correctie) {
invoer1 = 0;
invoer2 = 0;
ingevoerd1 = "";
ingevoerd2 = "";
operator = "";
text.setText("");
}
}
}
class operatorHandler implements ActionListener {
public void actionPerformed(ActionEvent e) {
if (e.getSource() == plus) {
operator = "+";
}
if (e.getSource() == min) {
operator = "-";
}
if (e.getSource() == keer) {
operator = "*";
}
if (e.getSource() == deel) {
operator = "/";
}
if (e.getSource() == isKnop) {
if (operator == "+") {
text.setText("");
uitvoer = invoer1 + invoer2;
text.setText(uitvoer + "");
bewaar += uitvoer;
invoer1 = 0;
invoer2 = 0;
uitvoer = 0;
ingevoerd1 = "";
ingevoerd2 = "";
} else if (operator == "-") {
text.setText("");
uitvoer = invoer1 - invoer2;
text.setText(uitvoer + "");
bewaar += uitvoer;
invoer1 = 0;
invoer2 = 0;
uitvoer = 0;
ingevoerd1 = "";
ingevoerd2 = "";
} else if (operator == "*") {
text.setText("");
uitvoer = invoer1 * invoer2;
text.setText(uitvoer + "");
bewaar += uitvoer;
invoer1 = 0;
invoer2 = 0;
uitvoer = 0;
ingevoerd1 = "";
ingevoerd2 = "";
} else if (operator == "/") {
text.setText("");
uitvoer = invoer1 / invoer2;
text.setText(uitvoer + "");
bewaar += uitvoer;
invoer1 = 0;
invoer2 = 0;
uitvoer = 0;
ingevoerd1 = "";
ingevoerd2 = "";
}
}
}
}
public static void main(String[] args) {
Rekenmachine2 r2 = new Rekenmachine2();
}
}