/* Licence: williamsmobile.co.uk/licence.htm */ package mypackage; import net.rim.device.api.ui.component.ButtonField; import net.rim.device.api.ui.component.EditField; import net.rim.device.api.ui.component.TextField; import net.rim.device.api.ui.Field; import net.rim.device.api.ui.FieldChangeListener; import java.util.Random; class NumGen extends net.rim.device.api.ui.UiApplication { public static void main(String[] args) { new NumGen().enterEventDispatcher(); } NumGen() { pushScreen(new MyScreen()); } } class MyScreen extends net.rim.device.api.ui.container.MainScreen { EditField minField, maxField; ButtonField genBtn; TextField numField; MyScreen() { setTitle("NumGen 1.2 - williamsmobile.co.uk"); minField = new EditField("Min Value: ", "", 10, EditField.FILTER_NUMERIC); maxField = new EditField("Max Value: ", "", 10, EditField.FILTER_NUMERIC); genBtn = new ButtonField("Generate", ButtonField.CONSUME_CLICK); numField = new TextField(TextField.NON_FOCUSABLE); genBtn.setChangeListener(new listener()); add(minField); add(maxField); add(genBtn); add(numField); } class listener implements FieldChangeListener { public void fieldChanged(Field field, int context) { if (field == genBtn) { Random rand = new Random(); int minInt = Integer.parseInt(minField.getText()); int maxInt = Integer.parseInt(maxField.getText()); int num = rand.nextInt((maxInt - minInt) + 1) + minInt; numField.setText(Integer.toString(num)); } } } public boolean onSavePrompt() { return true; } }