Alguém pode me ajudar

35 respostas
jframenetbeansjava
L

Eu quero aprender fazer que a minha tela do meu Jframe mude sem ter que chamar outra (pois eu tenho um exercicio de 80 palavras ai não quero ter que abrir 80 telas, pois é a unica coisa que eu sei)

35 Respostas

D

E qual a dificuldade, jovem? Já pensou em estudar, pegar alguns livros, apostila, tutorial, vídeo aula?

L

esse é o problema mano eu já tentei isso, procurei video aulas (aprendi novas coisa alias) mas não aprendi o que eu queria, pedi ajuda para o meu professor e ele ainda não respondeu

L

tava estudando pelo site Java Progressivo e também não achei

D

O que ocorre é que é um processo bastante complicado e, talvez, mais custoso que criar telas diferentes para cada coisa.
Veja, você precisará:

  • Definir os componentes que estão sendo exibidos como setVisible(false) e, talvez, inativar os mesmos (setDisabled(true))
  • Garantir que toda a estrutura do JFrame está limpa
  • Identificar os componentes a serem exibidos na sequência
  • Setar os componentes a serem exibidos como setVisible(true) e setDisabled(false)
  • Repetir isso para todas as atualizações.

Pense na quantidade de componentes a serem criados, pense na forma de desenvolver isso, sem se confundir, sem ter uma classe estratosfericamente gigante.
Eu acho inviável.

W

Da uma estudada no JInternalFrame, acho que com ele vc consegue fazer o que quer

https://docs.oracle.com/javase/tutorial/uiswing/components/internalframe.html

L

Vou tentar, MUITO Obrigado mano, eu pensei que assim um iria ficar tirando o outro mas não

L

vou estudar agora, muito obrigado

D

Usar JInternalFrame é uma opção. Porém, você ainda precisará programar todas as telas, em cada JInternalFrame.

W

Sim fato, mas a programação dele fica um pouco menos poluida(se é que se pode dizer isso kkkk)

D

Acho que o meu conceito de poluição e o teu são distintos.
A não ser que ele isole cada JInternalFrame em uma sub classe distinta, ele terá um monte de código amontoado e isso é péssimo.
Por isso eu disse que a melhor abordagem seria criar cada JFrame isolado.
Uma pena não existir um template, como o delphi possui

A

Quando você diz 80 telas, o que muda de uma para outra? O layout é diferente? Cada tela faz realmente uma coisa diferente?

L

Darlan, fiz isso, o programa ficou perfeito, como eu imaginei ele saiu, porém na hora de entregar o trabalho na escola ele simplesmente não abriu, eu testei no outro pc e nada também, porém quando eu cheguei em casa ele abriu normal, você tem ideia do que pode ter sido?

D

Pode ser a versão do JDK, pode ser que tenha faltado alguma coisa na hora de gerar o jar.

L

a versão do meu o a do PC deles?

D

De ambos, né? A tua pode ser uma versão e a do outro, outra.
Mas, a maneira mais eficaz de descobrir problemas é sempre colocar logs e invocar a aplicação via linha de comando. Assim, o que houver de erro fica na linha de comando e você pode consultar.

L

mano, não entendi, pode me dizer como fazer?

D

Vamos supor que você exportou o projeto para um jar e o nome do jar é projeto_java.jar, ok? Depois você troca esse nome pelo nome do jar que você criou.
Abra uma janela do prompt de comando e execute o método abaixo

java -jar projeto_java.jar

Isso vai abrir a tua aplicação e permitir que você rode tranquilamente, porém, vai manter o prompt aberto e todo e qualquer erro será apresentado neste prompt.

L

o nome da aplicação é Trabalho fica java -jar Trabalho.jar

L

mano você quer tentar abrir aí? http://www.mediafire.com/file/zxh2ynfkwt9761d/Trabalho.jar

D


Cara, o problema é que você colocou alguma dependência que só existe na tua máquina ou no netbeans que você tem em teu computador.
Por isso que eu reclamo do netbeans…

L

Acho que já sei, foi umas imagens, eu devo criar um pacote com elas né?

S

Poxa, a exceção está bem clara, não tem nada a ver com imagens, o que houve é que a JVM não encontrou a seguinte classe:

org.netbeans.lib.awtextra.AbsoluteLayout

Você precisa incluir o JAR dessa classe no classpath de sua aplicação.

P

Acho que o Staroski já respondeu… aconteceu comigo outras vezes… quando gera o Jar (sem incluir algumas libs nele) roda no seu PC pq ele tem referência lá, mas não tem na sua escola…
Quando for gerar o Jar, veja as opções de incluir libs e classes (para ele ficar com tudo o que precisa para rodar dentro dele, sem dependência/referência externa).

L

Staroski se não for incomodar, poderia me ensinar?

L

Entendi, poderia me dizer onde ver?

P

Tenta uma dessas explicações (não sei sua versão no Eclipse, mas é algo assim)

L

Sem querer ser abusivo, mas você sabe como é o do NetBeans?

L

olha as opções

D

Se eu estou bem lembro, no netbeans você exporta e tem a opção de selecionar onde vai inserir as libs das quais o teu projeto depende (se dentro do jar gerado ou numa pasta fora). Talvez você tenha optado pela segunda opção e esqueceu de copiar a pasta. O ideal é exportar tudo junto, no mesmo jar. Evitando, assim, problemas como este.

P

Como o Darlan disse, deve ser algo parecido na hora que for gerar o JAR, eu particularmente não sei.

L

Sim ele fez a pasta fora, aí o programa só inicia quando ele está na mesma pasta com essa pasta que foi gerada

D

Para uma solução rápida, sempre copie a tal pasta junto do jar.
Ou, como eu comentei, exporte já definindo que as dependências ficam dentro do jar gerado.

L

você sabe como mudar o exporte? (você pode tentar abrir no seu pc?
http://www.mediafire.com/file/rlgmf7y71a82td0/trabalhodept.rar)

S

Lacan, faz o seguinte, no Netbeans você clica com o botão direito no projeto e clica na opção Limpar e Construir. Após esse procedimento na Pasta do Netbeans em Meus documentos estará a pasta do projeto e clicando nela terá um pasta chamada dist, nela está o arquivo .jar e uma pasta lib, ou seja ele criou o projeto e deixou alguns arquivo nessa pasta, então tem como fazer um procedimento para juntar tudo em um único arquivo.

S

XML para um unico JAR.txt (1,0 KB)

Após esse procedimento que falei acima, na aba arquivos do seu projeto você vai procurar o arquivo build.xml, você abre ele e lá no final do script vai terminar com , então antes desse térmico você vai adicionar esse código que estou passando em anexo, na Linha Value=“KitSocorroPge”, você vai alterar para colocar o nome do seu projeto.
Em seguida você clica com o botão direito nesse arquivo build.xml, clica em Executar destino> Outros destinos> package-for-store. se tudo deu certo, na pasta do Netbeans em meus documentos, na pasta do seu projeto, deve ter gerado uma pasta STORE, essa pasta contém o seu arquivo, junto com a pasta lib gerada anteriormente, tudo em um único arquivo.

Agora sim, poderá utilizar em qualquer lugar, desde que tenha o JVM instalado.
Espero ter ajudado.

Criado 21 de fevereiro de 2018
Ultima resposta 2 de mar. de 2018
Respostas 35
Participantes 7