Porque é k não aparece?

6 respostas
P

Porque é que só me aparece a janela e não aparece nada lá escrito?!?! como faço??

import <a href="http://java.io">java.io</a>.*;

import java.awt.Color;

import java.awt.Frame;

class jogo extends Frame{

//Metodo responsavel por ler dados informados no console 
static int LerTeclado(){ 
  try{ 
     BufferedReader BR = new BufferedReader(new InputStreamReader(System.in)); 
               
     String s = BR.readLine(); 
     return Integer.parseInt(s); 
  } catch(IOException e) { 
     return(0); 
  } catch(NumberFormatException e) { 
     return(0); 
  }
}

public static void main(String[] args) throws IOException {

Frame frame = new Frame (jogo das moedas);

frame.setSize(400,250);

frame.setBackground (Color.pink);

frame.setVisible (true);

int iMoedasDoJogador, iMoedas, iControlaJogador, iMax;
//Informo o valor inicial do jogo 
    System.out.println("\n Com quantas moedas quer começar o jogo?\n");
    iMoedas = LerTeclado();
    System.out.println("\n Qual é o maximo de moedas que deseja retirar?");
    iMax = LerTeclado();


    //Usarei um contador para diferenciar os jogadores 
    //Jogador 1=1 &amp;&amp; Jogador 2 = 2 
    iControlaJogador = 1; 
    
    //Inicia o jogo com zero jogados 
    iMoedasDoJogador = 0; 
    
    //Faz enquanto existir 1 moeda ou mais 
    while(iMoedas &gt;= 1) { 
        do { 
            	
            //Informativo de valores atuais restantes de Moedas 
            System.out.println("&gt;&gt; Existem " + iMoedas + " moedas no jogo &lt;&lt;\n"); 
            
            //Informa o erro SE o jogador informar valor superior a 3 
            if(iMoedasDoJogador &gt; iMax) { 
                System.err.println ("Não pode retirar mais que "+iMax+" moedas"); 
            } 
            
            //Mostra mensagem e recebe valor do jogador 
            System.out.print("Quantas moedas o jogador " + iControlaJogador + " deseja retirar? (Max "+iMax+ " )\n=&gt; "); 
            iMoedasDoJogador = LerTeclado(); 
            System.out.println(); 
        
            //Verifica que jogador jogou e muda para o proximo 
            iControlaJogador = (iControlaJogador == 2)?1:2; 

        }while(iMoedasDoJogador &gt; iMax); //Actualiza quando o valor que o jogador informar for maior que 3 

        iMoedas = (iMoedas - iMoedasDoJogador);
    } 

    
    //Informa qual jogador que Ganhou 
    System.out.println("*** O jogador " + iControlaJogador + " Ganhou! ***"); 
    
    //Finaliza o Programa 
    System.exit(0); 
}

}

Tou a começar a stressar MUITO!!!

Alguém pode ajudar!??! :oops:

6 Respostas

S

Em nenhum lugar você mandou escrever no frame, só no terminal.
Você vai ter que adicionar um componente (como um textarea, por exemplo) e mandar escrever nele.

F

Olá Pink… tudo bem?

É exatamente como nosso colega Shuenemann falou, você simplismente declarou um Frame, mas ainda continua a usar toda programação via console.

Para fazer via janelinha, bonitinho, terá que usar componentes (jbutton, textarea, textfield, label, etc.). Dê uma pesquisada no forum e veja como fazer telas gráficas.

Abraço,
Fábio Heleno (FaHeCoN)

P

obrigado… mas vou ter de mudar o programa todo!!! :???:

P

bem obrigado … mas eu tou farta de procurar por todo o lado e não sei como fazer… pois eu n tenho aulas nem nunca tive de nada que se pareça com programação… alguem tem um exemplo ou assim para ver como se faz?

S

Aqui no site deve ter, em Almanaque Java.

Não vai precisar escrever tudo de novo, só inserir um TextArea no Frame, e trocar as linhas onde você escreve no terminal por linhas que escrevam no TextArea.

Uma pergunta: por que está usando AWT?

P

pois eu não sei responder a isso… como disse não percebo nada disto tou a fazer um trabalho…

Vou ver onde disse…

Criado 22 de maio de 2005
Ultima resposta 22 de mai. de 2005
Respostas 6
Participantes 3