Hi!
Has anyone an idea for a simple box to input numbers?
It just has to set an integer so the Program can check if a correct answer was put in.
   
   
            import greenfoot.*;
import java.awt.Color;
public class NumberInputBox extends Actor
{
    static int value = 0;
    String text = "";
    
    public NumberInputBox()
    {
        updateImage();
    }
    
    private void updateImage()
    {
        GreenfootImage image = new GreenfootImage(150, 30);
        image.setColor(new Color(128, 0, 0));
        image.fill();
        image.setColor(Color.lightGray);
        image.fillRect(3, 3, 144, 24);
        GreenfootImage numImage = new GreenfootImage(" " + text + " ", 24, Color.black, Color.lightGray);
        image.drawImage(numImage, 75 - numImage.getWidth() / 2, 15 - numImage.getHeight() / 2);
        setImage(image);
    }
    public void act()
    {
        String key = Greenfoot.getKey();
        if (key == null) return;
        if ("-".equals(key) && text.length() == 0)
        {
            text = "-";
            updateImage();
        }
        if ("0123456789".indexOf(key) > -1 && text.length() < 10)
        {
            text += key;
            updateImage();
        }
        if ("backspace".equals(key) && text.length() > 0)
        {
            text = text.substring(0, text.length() - 1);
            updateImage();
        }
        if ("enter".equals(key) && (text.length() > 1 || (text.length() > 0 && text.charAt(0) != '-')))
        {
            value = Integer.valueOf(text);
            getWorld().removeObject(this);
        }
    }
}import greenfoot.*;
public class Pad extends World
{
    boolean gettingNumber = false;
    
    public Pad()
    {    
        super(400, 40, 1); 
        addObject(new NumberInputBox(), 200, 20);
        gettingNumber = true;
    }
    
    public void act()
    {
        if (gettingNumber && getObjects(NumberInputBox.class).isEmpty())
        {
            gettingNumber = false;
            System.out.println("" + NumberInputBox.value);
            Greenfoot.stop();
        }
    }
}