Witam wszystkich mam do napisania program w języku Java na zaliczenie. Jest to prosty kalkulator z listą rozwijalną, czyli wpisujemy dwie liczby i wybieramy znak (+ - * / ) z listy. Mój problem jest taki że mam napisany cały program i on działa tylko jest problem,że muszę dodać możliwość żeby przy wyborze z listy znaku dzielenia i wpisaniu w pole np. liczba1-15 a w pole liczba2-0 wyskakiwał komunikat, że nie można tego zrobić ;/ Nie wiem jak się do tego zabrać. Pomocy :)
Kod programu napisany jest w NetBeans IDE 7.0.1.
Załączam screen jak wygląda działający program.
Oto kod mojego programu:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package pkg48;
import java.applet.Applet;
import java.awt.BorderLayout;
import java.awt.Choice;
import java.awt.FlowLayout;
import java.awt.Label;
import java.awt.Panel;
import java.awt.TextField;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
/**
*
*/
public class NewApplet extends Applet implements ItemListener, WindowListener {
Label l1=new Label("Liczba 1");
Label l2=new Label("Liczba 2");
Label l3=new Label("Wybierz dzialanie");
Label l4=new Label("Wynik");
Choice lista1=new Choice();
Panel p1=new Panel();
Panel p2=new Panel();
TextField liczba1=new TextField(10);
TextField liczba2=new TextField(10);
TextField wynik=new TextField(10);
@Override
public void init() {
setLayout (new BorderLayout());
p1.setLayout(new FlowLayout());
this.add(p1,BorderLayout.CENTER);
p1.add(l1);
p1.add(liczba1);
p1.add(l2);
p1.add(liczba2);
p1.add(l3);
p1.add(lista1);
p2.setLayout(new FlowLayout());
this.add(p2,BorderLayout.SOUTH);
p2.add(l4);
p2.add(wynik);
lista1.add("+");
lista1.add("-");
lista1.add("*");
lista1.add("/");
lista1.addItemListener(this);
wynik.setEnabled(false);
}
public void itemStateChanged(ItemEvent e) {
Object o=e.getSource();
long wynikl=0;
if (o==lista1)
{
long n=Integer.parseInt(liczba1.getText());
long m=Integer.parseInt(liczba2.getText());
int poz=lista1.getSelectedIndex();
if (poz==0)
{wynikl=n+m;
}
else if (poz==1)
{wynikl=n-m;
}
else if (poz==2)
{wynikl=n*m;
}
else if (poz==3)
{wynikl=n/m;
}
}
System.out.println("Nie można dzielić przez ZERO!");
wynik.setText(Long.toString(wynikl));
}
@Override
public void windowOpened(WindowEvent e) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public void windowClosing(WindowEvent e) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public void windowClosed(WindowEvent e) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public void windowIconified(WindowEvent e) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public void windowDeiconified(WindowEvent e) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public void windowActivated(WindowEvent e) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public void windowDeactivated(WindowEvent e) {
throw new UnsupportedOperationException("Not supported yet.");
}
}
Jeśli ten temat jest bez sensu, lub nie pasuję to proszę o kasację tegoż tematu.
Dziękuje za wszelką pomocną dłoń :P