Então… Assim, tenho minha tela de login e ela tem uma imagem de fundo. Pra não salvar a minha imagem em uma pasta e ficar exposta pra qualquer um ir la e alterar, queria saber como faço pra incluir ela dentro do meu jar. Digo, qual caminho buscar pra poder encontrar esta imagem? Fica na minha pasta de arquivos class ou arquivos java? Socorro kk
Sim, eu pesquisei, mas não entendi bem o que fizeram…
Estou usando o Eclipse
Quero salvar o caminho em uma String…
Abra o seu .jar com o WinRar e verifique se a sua imagem se encontra lá dentro, se achar, é só obter o caminho dela utilizando getClassLoader(), que vc acha exemplos de monte no google. Caso não ache ela, adicione a pasta que está a imagem no classpath, gere o jar, e verifique novamente.
As minhas sempre ficaram dentro do jar nem sei fazer pra ficar fora kkkkk Um exemplo simples, crie dentro da pasta src uma pasta chamada Imagens, eu utilizo netbeans pode fazer por ele tb, e joga as imagens ai dentro, dai so setar como Imagens/suaimagem.png, quando gerar o jar as imagens vao estar dentro dele se tiver alguma duvida fala que te mando um exemplo
2 curtidas
MANO, PELO AMOR DE CRISTO, ME AJUDA KKK
Eu até entendi, fiz isso, mas acho que fiz errado, porque não tá aparecendo. Ah, eu uso o Eclipse… mas entendo o que ce quis dizer que fez no netbeans. Mas pode dar um exemplo ae? Se não for demais, com imagem, porque sou leigo :v
Clica com o direito no projeto e vai em “new package”, nomeia ele como imagens e copia e cola as imagens lá dentro, ai pra acessar as imagens de outro pacote você passa o caminho …/imagens/nome_da_imagem.gif, quando gerar o jar as imagens vão estar dentro dele.
Vo criar um exemplo aqui rapidão, espera 5 min que ja posto
Edit
Segue o link, ai ta o jar da aplicação para vc ver que as imagens estao dentro do jar, ele esta dentro da pasta dist, e o codigo fonte na pasta src, fiz so uma tela para exemplificar o que vc quer, nada de funcional nele rs
Quando você salva a imagem dentro do jar, você precisa acessar essa imagem como um recurso, um exemplo: https://docs.oracle.com/javase/tutorial/deployment/webstart/retrievingResources.html
1 curtida
Tô começando a entrar em pânico kk
Saca só. Esta é a String que tá recebendo a minha imagem.
E aqui está meu conjunto de packages. A imagem está ali, no package img e minha main tá no package Arkell
Já tentei até colocando dentro do package Arkell, mas não tá indo também… Tô errando algo?
Meu fundo tá em um JLabel…
lbFundo.setIcon(new ImageIcon(c.fundoInicio));
Vc ta fzd em Swing ou JavaFX? Tenta colocar uma imagem em um botao conforme falei para vc ver, quando eu ia colocar fundo n setava assim, pq pelo menos aqui nunca deu pra ficar uma em cima da outra, pois nao era possivel adicionar itens em um label, quando queria fazer fundo usava o paint com o draw image, porem isto nao vem ao caso que seria sua pergunta de colocar a imagem no jar rsrs olha o exemplo q mandei q ta funcionando 100% xD
Você viu o link q eu postei? Em teoria basta você fazer:
lbFundo.setIcon(new ImageIcon(this.getClass().getClassLoader().getResource(c.fundoInicio));
1 curtida
Swing D:
Ainda não migrei
Tô com ele aberto, to testando
Opa, consegui!
@juliofsn , foi do seu jeito que fiz, rodou direitinho, valeu mesmo ;-;
lbFundo.setIcon(new ImageIcon(this.getClass().getResource(c.fundoInicio)));
Sendo que na minha classe Constante, que instanciei com o nome c, eu tinha uma String chamada fundoInicio que recebia o local “/img/fundo.jpg”, por isso concatenei c.fundoInicio
Obrigado a todos que se dispuseram a me ajudar!
Por isso que falei pra vc ver la o que tinha postado kkk ta em swing tb o exemplo e era esse comando ai, la utilizei em um botao:
btnEntrar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagens/unlock.png")));
Mas se quer deixar como fundo da uma olhada em drawImage e paint q fica lgl flw
1 curtida
Beleza mano, vou dar uma olhada, com certeza hue
Agora tenho que descobrir como colocar o topico como resolvido '-'
Uma vez eu fiz, mas não lembro mais como faz. E realmente não to achando nada. auehaeuh
Perfeito me salvou desta vez.
Do meu jeito usando o JasperSoft Studio ficou assim:
//exibindo o relatorio
HashMap filtro = new HashMap();
//passando o caminho das imagens do projeto por parametro
filtro.put("CABECALHO", "images/cabecalho.png");
filtro.put("ASSINATURA", "images/assinatura.png");
JasperPrint impressao = JasperFillManager.fillReport( caminho, filtro, conexao );
JasperViewer viewer = new JasperViewer( impressao , false );
viewer.setTitle("Relatório de Patrimônios Transferidos");
viewer.setZoomRatio(new Float(0.7956)); //ajustando o relatorio na pagina
viewer.setVisible(true);
conexao.close();