GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Como ajustar velocidade de cada frame da animação no game maker
por Ralphed Ontem à(s) 18:28

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07

» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51

» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31

» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11

» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39

» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16


JAVA - transformando segundos em horas, minutos e segundos

2 participantes

Ir para baixo

JAVA - transformando segundos em horas, minutos e segundos Empty JAVA - transformando segundos em horas, minutos e segundos

Mensagem por Da Galáxia Seg 18 Abr 2011, 21:00

Este programa vai construir uma janela, 1 botão e 2 cxs de textos.
Na primeira caixa de texto, o usuario irá digitar um valor, ex. 7452 e o programa converterá para 2 hora(s) 4 Minuto(s) 12 Segundo(s).

As caracteristicas basicas de um programa em JAVA são:

1 - IMPORTAR a(s) biblioteca(s)
2 - A CLASSE - diferentemente de C++ ou Delphi por ex. em Java é obrigatório ao menos uma classe. Na IDE eclipse a classe inicial o seu nome é escolhido antes do projeto, não podendo mais ser mudado. Na IDE Netbeans esta classe tem o nome de main, tb não podendo ser mudado (se eu estiver errado, por favor me corrijam). No nosso caso, como vamos criar objetos (janela, botao e 2 caixas de textos), vamos extender a classe inicial à classe JFrame (que pertence a biblioteca javax.swing) e como queremos que no clicar do nosso botão uma ação seja desencadeada vamos implementar à nossa classe uma interface (ActionListener). suas chaves inicial(begin em delphi) e final(end em delphi) abrigarão todo o programa. Abaixo da classe vamos declarar os tipos e as variaveis para o botão e as 2 caixas de texto. Em seguida vamos criar o metodo para a futura ação do nosso botão, aqui tb vamos declarar as variveis que vai calcular nosso programa, elas tiveram que ser declaradas e parametradas aqui, pois o calculo que queremos delas é apos o clicar dos botoes.
3- O PROGRAMA PRINCIPAL (pelo menos assim que é chamado em C++) public static void main(String[] args) nele nós instanciaremos o nosso construtor da classe e criaremos a janela (JFrame)
4 - E por fim CHAMAMOS O CONSTRUTOR e ele se encarrega de criar os objetos.

OBS: Existe enumeras maneiras de fazer este programa, deste jeito é o que eu acho o mais descomplicado. As enumerações que eu fiz acima é mais ou menos o conceito basico da extrutura para se programar em java; importa a biblioteca, criase-se a classe, tens o programa principal chama a classe. É claro que este é um programa pequeno e tb simples, mas pode-se ter um programa com dezenas de classes e metodos destas classes. No nosso programa temos apenas um metodo.

NOTA: A programação não é necessariamente linear, por exemplo a ultima coisa que programei foi o metodo>>public void actionPerformed(ActionEvent evento).


Segue abaixo oprograma com comentários (em verde).


import javax.swing.*; //biblioteca dos botoes e janela
import java.awt.event.*;//biblioteca de eventos (click no botão por ex.)
import java.awt.*;//biblioteca de eventos

//classe //classe //interface
public class main2 extends JFrame implements ActionListener {

//global //tipo //variavel
static JButton botao;
static JTextField cxEntrada;
static JTextField cxSaida;

//METODO (aqui que o clicar do botão ganha uma ação real)
//ascesso livre//retorno nulo//metodo//tipo//variavel

public void actionPerformed(ActionEvent evento){

int SegHora = 3600;
int SegMinuto = 60;

//convertendo >> a variavel do tipo inteiro adquiri o valor da cxEntrada
int EntraSeg = Integer.parseInt(cxEntrada.getText());

int Resto = EntraSeg % SegHora;//% modulo (resto)

//resultado da caixa de saida
cxSaida.setText(EntraSeg / SegHora + " hora(s) " +

Resto / SegMinuto + " Minuto(s) " + Resto % SegMinuto + " Segundo(s)");

}

public static void main(String[] args){
//construtor //criado janela //titulo da janela
main2 janela = new main2("Transformar segundos em horas");

//propriedades da janela
janela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
janela.setSize(300, 100);//tamanho da janela
janela.setVisible(true);//para a janela aparecer
janela.setLocation(400, 200);//posição da janela


}

//chamando construtor
public main2(String TituloJanela){//tipo string para o titulo da janela

super(TituloJanela);//vai liberar titulo na janela

//criamos o botao
botao = new JButton("APERTE");

//seu click passa a ter uma ação, realizada pelo metodo acima
botao.addActionListener(this);

//criamos a cx, onde digitaremos os segundos
cxEntrada = new JTextField ("");

//criamos a cx, onde veremos o resultado
cxSaida = new JTextField ("Digite acima e veja o resultado em horas");
cxSaida.setEditable(false);//Não permite escrever(apenas leitura)
cxSaida.setBackground(Color.orange);//cor da caixa de texto


//criando um grid (grades) para conter os componentes

Container contendo = getContentPane();

GridLayout meu_grid = new GridLayout(3,0);//grid dividido por 3 no eixo x

contendo.setLayout(meu_grid);

contendo.add(cxEntrada);//add no grid

contendo.add(botao);//add no grid

contendo.add(cxSaida);//add no grid

}

}

Da Galáxia
Da Galáxia

Data de inscrição : 14/01/2010
Reputação : 1
Número de Mensagens : 348
Prêmios : JAVA - transformando segundos em horas, minutos e segundos Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

JAVA - transformando segundos em horas, minutos e segundos Empty Re: JAVA - transformando segundos em horas, minutos e segundos

Mensagem por vinians Ter 26 Abr 2011, 11:52

Amigo, seu tutorial está funcionando corretamente, mas seria interessanta formatar melhor a apresentação do código com a identação correta, pois facilita a leitura do código. Veja:Amigo, seu tutorial está funcionando corretamente, mas seria interessanta formatar melhor a apresentação do código com a identação correta, pois facilita a leitura do código. Veja:
  1: import javax.swing.*; //biblioteca dos botoes e janela 
  2: import java.awt.event.*;//biblioteca de eventos (click no botão por ex.) 
  3: import java.awt.*;//biblioteca de eventos
  4: 
  5: //classe //classe //interface
  6: public class main2 extends JFrame implements ActionListener 
  7: {
  8: 	//global //tipo //variavel
  9: 	static JButton botao;
 10: 	static JTextField cxEntrada;
 11: 	static JTextField cxSaida;
 12: 
 13: 	//METODO (aqui que o clicar do botão ganha uma ação real) 
 14: 	//ascesso livre//retorno nulo//metodo//tipo//variavel 
 15: 	public void actionPerformed(ActionEvent evento)
 16: 	{
 17: 
 18: 		int SegHora = 3600; 
 19: 		int SegMinuto = 60;
 20: 
 21: 		//convertendo >> a variavel do tipo inteiro adquiri o valor da cxEntrada
 22: 		int EntraSeg = Integer.parseInt(cxEntrada.getText()); 
 23: 		int Resto = EntraSeg % SegHora;//% modulo (resto)
 24: 
 25: 		//resultado da caixa de saida
 26: 		cxSaida.setText(EntraSeg / SegHora + " hora(s) " +
 27: 
 28: 		Resto / SegMinuto + " Minuto(s) " + Resto % SegMinuto + " Segundo(s)");
 29: 	}
 30: 
 31: 
 32: 	public static void main(String[] args)
 33: 	{
 34: 		//construtor //criado janela //titulo da janela
 35: 		main2 janela = new main2("Transformar segundos em horas");
 36: 		//propriedades da janela
 37: 		janela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 38: 		janela.setSize(300, 100);//tamanho da janela
 39: 		janela.setVisible(true);//para a janela aparecer
 40: 		janela.setLocation(400, 200);//posição da janela
 41: 	}	
 42: 
 43: 	//chamando construtor 
 44: 	public main2(String TituloJanela)
 45: 	{//tipo string para o titulo da janela
 46: 		super(TituloJanela);//vai liberar titulo na janela 
 47: 		//criamos o botao	
 48: 		botao = new JButton("APERTE");
 49: 		//seu click passa a ter uma ação, realizada pelo metodo acima 
 50: 		botao.addActionListener(this);
 51: 		//criamos a cx, onde digitaremos os segundos 
 52: 		cxEntrada = new JTextField ("");
 53: 
 54: 		//criamos a cx, onde veremos o resultado 
 55: 		cxSaida = new JTextField ("Digite acima e veja o resultado em horas");
 56: 		cxSaida.setEditable(false);//Não permite escrever(apenas leitura) 
 57: 		cxSaida.setBackground(Color.orange);//cor da caixa de texto
 58: 
 59: 
 60: 		//criando um grid (grades) para conter os componentes 
 61: 
 62: 		Container contendo = getContentPane(); 
 63: 		GridLayout meu_grid = new GridLayout(3,0);//grid dividido por 3 no eixo x 
 64: 		contendo.setLayout(meu_grid); 
 65: 		contendo.add(cxEntrada);//add no grid
 66: 		contendo.add(botao);//add no grid 
 67: 		contendo.add(cxSaida);//add no grid
 68: 
 69: 	}
 70: 
 71: } 

Flws!
vinians
vinians

Games Ranking : Nota B

Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Reputação : 90
Número de Mensagens : 2715
Prêmios : JAVA - transformando segundos em horas, minutos e segundos Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Construct 2
  • Java
  • C#
  • Javascript
  • C ou C++
  • Outros


https://vinians.itch.io

Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos