Pessoal, eu quis fazer um trequinho simples para testar o uso de um DateField no lugar de um TextField para o usuário digitar uma data. O problema é que o código compila sem erros, mas não executa de jeito nenhum... o que há de errado???
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.util.*;
import java.io.*;
class DateFieldTeste extends MIDlet implements CommandListener {
Form form;
DateField campoData, mostraData;
Command cmOK, cmSair;
Display dsTela;
public DateFieldTeste() {
dsTela = Display.getDisplay(this);
campoData = new DateField("Digite uma data", DateField.DATE);
mostraData = new DateField("Data digitada", DateField.DATE);
cmOK = new Command("OK", Command.OK, 1);
cmSair = new Command("Sair", Command.EXIT, 1);
form = new Form("Teste DateField");
form.append(campoData);
form.append(mostraData);
form.addCommand(cmOK);
form.addCommand(cmSair);
form.setCommandListener(this);
}
public void commandAction(Command c, Displayable s) {
if (c == cmOK) {
mostraData.setDate(campoData.getDate());
}
if (c == cmSair) {
destroyApp(true);
}
}
// ------------------------MIDLET------------------------------------
public void destroyApp(boolean unconditional){
notifyDestroyed();
}
public void startApp(){
dsTela.setCurrent(form);
}
public void pauseApp(){}
}
Tenho esse arro aqui:
Unable to create MIDlet DateFieldTeste
java.lang.IllegalAccessException
at com.sun.midp.midlet.Selector.commandAction(+50)
at javax.microedition.lcdui.Display$DisplayAccessor.commandAction(+152)
at com.sun.kvem.midp.lcdui.EmulEventHandler$EventLoop.run(+459)