Desito...não consigo compilar

PessoALL, estou tentando compilaar, um simples programa em Java, coisa que no delphi fiz em menos de 2 minutos… e no Java, estou aqui a mais de 2 dias sem saber como funciona… :frowning:

é o seguitne código:

[code]import javax.microedition.lcdui.;
import javax.microedition.midlet.
;

public class gerachave extends MIDlet implements CommandListener
{
// variavel
TextBox chave;
Display tela;
int sum1, sum2, x, s;
int n[];

// inicia o aplicativo
public void startApp() {
this.tela = Display.getDisplay(this);
this.tela.setCurrent(this.chave);

  n = new int[10];
  this.chave = new TextBox("Chave de Liberacao","", 20, TextField.ANY);

  this.chave.setString("TESTE");
}



// classes de fechar e pausar!
protected void destroyApp(boolean param) { }

protected void pauseApp() { }

}
[/code]

Quando mando compilar atraves do GEL, da erro na primeira linha… falando que não existe a classe e tals…

quando entro no ToolKit ele fala que nã oexiste a classe, gerachave…

como assim, nao existe?!?! ela nao esta lah???

seghuinte, tenho os seguintes programas instalados:

-WTK22
-j2sdk1.4.2_03

  • GEL como editor!

Preciso de mais alguma coisa, pra finalmente compilar meu programinha??

o que eu to querendo eh nada mais nada menos que preencher o vetor com dados randomicos… e depois fazer uma operacao matematica, e depois exibir na tela do celular…

[]s e desde já agradeço!

Seguinte velho…vc ta implementando a interface CommandListener
entao se vc implementa uma interface tem que implementar todos os metodos dela (a nao ser que sua classe seja abstrata)
ela possui so o metodo commandAction
entao adiciona isso no seu codigo:

public void commandAction(Command c, Displayable d){
        
    }

esse método trata dos eventos do seu MIDlet quando vc clica nos botoes laterais do celular, se quiser criar alguma logica baseada nos botoes use o método

blz?
[]'s

Amigo, o mesmo erro :frowning:

Project "gerachave" loaded
Running with storage root DefaultColorPhone
Unable to create MIDlet gerachave
java.lang.ClassNotFoundException: gerachave
	at com.sun.midp.midlet.MIDletState.createMIDlet(+14)
	at com.sun.midp.midlet.Selector.run(+22)

Você nao teria um exemplo simples, que soh exibisse um texto na tela do pc? aih ajudaria muito, :smiley:

ah… o codigo agora eh:

[code]
import javax.microedition.lcdui.;
import javax.microedition.midlet.
;

public class gerachave extends MIDlet implements CommandListener
{
// variavel
TextBox chave;
Display tela;
int sum1, sum2, x, s;
int n[];

// inicia o aplicativo
public void startApp() {
this.tela = Display.getDisplay(this);
this.tela.setCurrent(this.chave);

  n = new int[10];
  this.chave = new TextBox("Chave de Liberacao","", 20, TextField.ANY);

  this.chave.setString("TESTE");
}

public void commandAction(Command c, Displayable d){

}

// classes de fechar e pausar!
protected void destroyApp(boolean param) { }

protected void pauseApp() { }

}[/code]

[]s

velho voce tem certeza que colocou a classe no diretorio certo la no toolkit?
no diretorio classes…

entao eu to usando agora o netbeans 4 com desenvolvimento movel
eh muito legal…ele ja vem preparado pra tudo…quando vc cria um projeto ele ja cria uma classe com todos os metodos sobreescritos e talz

essa classe ai que vc ta fazendo ja eh simples…acho que o erro nao ta na sintaxe

tenta ve os diretorios la do toolkit…
tem um tutorial que explica certinho no portal java mesmo
http://www.portaljava.com/home/modules.php?name=Content&pa=list_pages_categories&cid=16

espero q de certo
[]'s

Amigo, funcionou perfeitamente, o problema eh que nao estava colocando o arquivo na pasta classes, e sim na src… mudei e nao deu erro…

porem nao exibiu nada na tela…

como faco pra exibir na tela alguma string?

etou baixando o software q voce usa, pra ver se eh melhor que o que eu uso… :frowning:

[]s

entao velho
esse linha sua

this.tela.setCurrent(this.chave);

tem que ser a ultima a ser executada
pq quando vc faz o chave receber um novo textBox…a variavel chave aponta para esse novo endereco…mas seu MIDlet continua apontando pro antigo
entao o certo eh vc inicializar seu textfield e depois por ultimo setar ele no midlet

tenta ai
[[]'s velho