snoob
Legacy Member
Kben zelf een simpele rekenmachine aant coderen, simpele GUI met 1 domeinklasse, krijg geen compileerfouten enkel alsk op men bewerkknoppen druk
GUI/Rekenmachine.java:
domein/rekenmachine.java:
Alsk dus op btnBewerking1 tot 4 duw krijg ik:
Iemand enig idee wat er fout is ?
GUI/Rekenmachine.java:
Code:
package gui;
import javax.swing.WindowConstants;
import domein.rekenmachine;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
public class Rekenmachine extends javax.swing.JFrame {
{
//Set Look & Feel
try {
javax.swing.UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
} catch(Exception e) {
e.printStackTrace();
}
}
private rekenmachine rekmach;
private JLabel lblTitel;
private JButton btnUitkomst;
private JButton btnTerug;
private JButton btnDecimaalTek;
private JButton btnGetal0;
private JButton btnBewerking4;
private JButton btnBewerking3;
private JButton btnBewerking2;
private JButton btnBewerking1;
private JPanel bewerkingen;
private JPanel knopjes;
private JButton btnGetal5;
private JButton btnGetal9;
private JButton btnGetal8;
private JButton btnGetal7;
private JButton btnGetal6;
private JButton btnGetal4;
private JButton btnGetal3;
private JButton btnGetal2;
private JButton btnGetal1;
private JTextField txtDisplay;
public static void main(String[] args) {
Rekenmachine inst = new Rekenmachine();
inst.setVisible(true);
}
public Rekenmachine() {
super();
initGUI();
}
private void initGUI() {
try {
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
getContentPane().setLayout(null);
{
lblTitel = new JLabel();
getContentPane().add(lblTitel);
lblTitel.setText("Rekenmachine");
lblTitel.setBounds(0, 0, 238, 28);
lblTitel.setHorizontalAlignment(SwingConstants.CENTER);
lblTitel.setHorizontalTextPosition(SwingConstants.CENTER);
lblTitel.setFont(new java.awt.Font("Tahoma",1,18));
}
{
txtDisplay = new JTextField();
getContentPane().add(txtDisplay);
txtDisplay.setBounds(7, 26, 175, 28);
txtDisplay.setHorizontalAlignment(SwingConstants.RIGHT);
}
{
knopjes = new JPanel();
GridBagLayout knopjesLayout = new GridBagLayout();
knopjesLayout.columnWidths = new int[] {20, 20, 20};
knopjesLayout.rowHeights = new int[] {20, 20, 20,20};
knopjesLayout.columnWeights = new double[] {0.1, 0.1, 0.1};
knopjesLayout.rowWeights = new double[] {0.1, 0.1, 0.1};
getContentPane().add(knopjes);
knopjes.setLayout(knopjesLayout);
knopjes.setBounds(10, 60, 129, 120);
{
btnGetal1 = new JButton();
knopjes.add(btnGetal1, new GridBagConstraints(0, 2, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnGetal1.setText("1");
btnGetal1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get = btnGetal1.getText();
String invoer = txtDisplay.getText();
txtDisplay.setText(String.format("%s%s",invoer,get));
}
});
}
{
btnGetal2 = new JButton();
knopjes.add(btnGetal2, new GridBagConstraints(1, 2, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnGetal2.setText("2");
btnGetal2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get = btnGetal2.getText();
String invoer = txtDisplay.getText();
txtDisplay.setText(String.format("%s%s",invoer,get));
}
});
}
{
btnGetal3 = new JButton();
knopjes.add(btnGetal3, new GridBagConstraints(2, 2, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnGetal3.setText("3");
btnGetal3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get = btnGetal3.getText();
String invoer = txtDisplay.getText();
txtDisplay.setText(String.format("%s%s",invoer,get));
}
});
}
{
btnGetal4 = new JButton();
knopjes.add(btnGetal4, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnGetal4.setText("4");
btnGetal4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get = btnGetal4.getText();
String invoer = txtDisplay.getText();
txtDisplay.setText(String.format("%s%s",invoer,get));
}
});
}
{
btnGetal5 = new JButton();
knopjes.add(btnGetal5, new GridBagConstraints(1, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnGetal5.setText("5");
btnGetal5.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get = btnGetal5.getText();
String invoer = txtDisplay.getText();
txtDisplay.setText(String.format("%s%s",invoer,get));
}
});
}
{
btnGetal6 = new JButton();
knopjes.add(btnGetal6, new GridBagConstraints(2, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnGetal6.setText("6");
btnGetal6.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get = btnGetal6.getText();
String invoer = txtDisplay.getText();
txtDisplay.setText(String.format("%s%s",invoer,get));
}
});
}
{
btnGetal7 = new JButton();
knopjes.add(btnGetal7, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnGetal7.setText("7");
btnGetal7.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get = btnGetal9.getText();
String invoer = txtDisplay.getText();
txtDisplay.setText(String.format("%s%s",invoer,get));
}
});
}
{
btnGetal8 = new JButton();
knopjes.add(btnGetal8, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnGetal8.setText("8");
btnGetal8.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get = btnGetal8.getText();
String invoer = txtDisplay.getText();
txtDisplay.setText(String.format("%s%s",invoer,get));
}
});
}
{
btnGetal9 = new JButton();
knopjes.add(btnGetal9, new GridBagConstraints(2, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnGetal9.setText("9");
btnGetal9.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get = btnGetal1.getText();
String invoer = txtDisplay.getText();
txtDisplay.setText(String.format("%s%s",invoer,get));
}
});
}
{
btnGetal0 = new JButton();
knopjes.add(btnGetal0, new GridBagConstraints(2, 3, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnGetal0.setText("0");
btnGetal0.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get = btnGetal0.getText();
String invoer = txtDisplay.getText();
txtDisplay.setText(String.format("%s%s",invoer,get));
}
});
}
{
btnDecimaalTek = new JButton();
knopjes.add(btnDecimaalTek, new GridBagConstraints(1, 3, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnDecimaalTek.setText(".");
btnDecimaalTek.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get = btnDecimaalTek.getText();
String invoer = txtDisplay.getText();
txtDisplay.setText(String.format("%s%s",invoer,get));
}
});
}
}
{
bewerkingen = new JPanel();
GridBagLayout bewerkingenLayout = new GridBagLayout();
bewerkingenLayout.columnWidths = new int[] {20,20};
bewerkingenLayout.rowHeights = new int[] {20,20,20};
bewerkingenLayout.columnWeights = new double[] {0.1, 0.1};
bewerkingenLayout.rowWeights = new double[] {0.1, 0.1};
getContentPane().add(bewerkingen);
bewerkingen.setLayout(bewerkingenLayout);
bewerkingen.setBounds(147, 63, 86, 90);
{
btnBewerking2 = new JButton();
bewerkingen.add(btnBewerking2, new GridBagConstraints(1, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnBewerking2.setText("/");
btnBewerking2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get1 = txtDisplay.getText();
rekmach.bewerken(4,get1);
}
});
}
{
btnBewerking4 = new JButton();
bewerkingen.add(btnBewerking4, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnBewerking4.setText("-");
btnBewerking4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get1 = txtDisplay.getText();
rekmach.bewerken(2,get1);
}
});
}
{
btnBewerking1 = new JButton();
bewerkingen.add(btnBewerking1, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnBewerking1.setText("*");
btnBewerking1.setBounds(189, 168, 42, 21);
btnBewerking1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get1 = txtDisplay.getText();
rekmach.bewerken(3,get1);
}
});
}
{
btnBewerking3 = new JButton();
bewerkingen.add(btnBewerking3, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnBewerking3.setText("+");
btnBewerking3.setBounds(144, 154, 42, 22);
btnBewerking3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get1 = txtDisplay.getText();
rekmach.bewerken(1,get1);
}
});
}
{
btnUitkomst = new JButton();
bewerkingen.add(btnUitkomst, new GridBagConstraints(1, 2, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
btnUitkomst.setText("=");
btnUitkomst.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String get2 = txtDisplay.getText();
txtDisplay.setText(String.format("%d",rekmach.uitkomst(get2)));
}
});
}
}
{
btnTerug = new JButton();
getContentPane().add(btnTerug);
btnTerug.setText("<");
btnTerug.setBounds(188, 26, 42, 28);
btnTerug.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String tekst = txtDisplay.getText();
if(tekst.length()==0)
JOptionPane.showMessageDialog(null,"Kan niets verwijderen");
else
txtDisplay.setText(tekst.substring(0,tekst.length()-1));
}
});
}
pack();
this.setSize(246, 223);
} catch (Exception e) {
e.printStackTrace();
}
}
}
domein/rekenmachine.java:
Code:
package domein;
public class rekenmachine
{
double get1, get2;
int bewerking;
public rekenmachine()
{
get1=0;
get2=0;
}
public void bewerken(int bewerk, String invoer)
{
get1 = Double.parseDouble(invoer);
bewerking = bewerk;
}
public double uitkomst(String invoer)
{
get2 = Double.parseDouble(invoer);
switch(bewerking){
case 1: get1+=get2;
case 2: get1-=get2;
case 3: get1*=get2;
case 4: get1/=get2;
default: System.out.println("Er is een fout opgetreden bij het kiezen van de bewerking");
}
return get1;
}
}
Alsk dus op btnBewerking1 tot 4 duw krijg ik:
Code:
Exception in thread "AWT-EventQueue-0" java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at gui.Rekenmachine$15.actionPerformed(Rekenmachine.java:290)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Iemand enig idee wat er fout is ?
..