Acho q deva ser trivial, mas como nunca fiz, como mudo o icone da minha app? Quero mudar akele icone da xicara de cafe do Java q aparece tanto do lado superior esquerdo, qto na barra de tarefas, como faco? E p por outro, posso usar img jpeg? vlw…
hlds,
faz assim,
// coloca uma figura na barra de título da janela
URL url = this.getClass().getResource("imagem.png");
Image imagemTitulo = Toolkit.getDefaultToolkit().getImage(url);
this.setIconImage(imagemTitulo);
Tu também podes fazer assim,
ImageIcon imagemTituloJanela = new ImageIcon("imagem.png");
setIconImage(imagemTituloJanela.getImage());
Agora, dá preferência a primeira. Caso você precise empacotar sua aplicação em um arquivo .jar, o segundo exemplo não consegue carregar. Já o primeiro exemplo pega tranquilamente.
ok, vlw
eu vou colocar num .jar sim, outra coisa, a imagem qnd eu empacotar no jar ficara empactoda nele ou n?
hlds,
sim, ficará empacotada.
so uma ultima duvida, eu tenho q por a imagem junta aos .class, .java ou posso deixar numa pasta a minha escolha?
hlds,
isso fica a sua escolha. Eu sempre crio uma pasta com o nome images e coloco as imagens que irei usar lá.
No meu caso, fica assim:
// coloca uma figura na barra de título da janela
URL url = this.getClass().getResource("/images/imagem.png");
Image imagemTitulo = Toolkit.getDefaultToolkit().getImage(url);
this.setIconImage(imagemTitulo);
ok, vlw
[quote=Petrônio Braga]hlds,
isso fica a sua escolha. Eu sempre crio uma pasta com o nome images e coloco as imagens que irei usar lá.
No meu caso, fica assim:
// coloca uma figura na barra de título da janela
URL url = this.getClass().getResource("/images/imagem.png");
Image imagemTitulo = Toolkit.getDefaultToolkit().getImage(url);
this.setIconImage(imagemTitulo);
[/quote]
Amigo, será que poderia me ajudar… estou com o mesmo problema… eu fiz… igual ao seu…
URL url = this.getClass().getResource("/imagens/lanfredi.ico");
Image imagemLanfredi = Toolkit.getDefaultToolkit().getImage(url);
this.setIconImage(imagemLanfredi);
porem, ele dá o seguinte erro
Uncaught error fetching image:
java.lang.NullPointerException
at sun.awt.image.URLImageSource.getConnection(URLImageSource.java:99)
at sun.awt.image.URLImageSource.getDecoder(URLImageSource.java:113)
at sun.awt.image.InputStreamImageSource.doFetch(InputStreamImageSource.java:240)
at sun.awt.image.ImageFetcher.fetchloop(ImageFetcher.java:172)
at sun.awt.image.ImageFetcher.run(ImageFetcher.java:136)
Acho que ele nao está achando o caminho da imagem… mais eu coloquei na pasta SRC imagens … como faço ??
obrigado.
Aii Galera eu Consegui fazer… é que a extensão do arquivo era .ico… pra ele pegar mudei para .png … e ai sim!!! fomos surpreendidos novamente!!
Eu tô tentando fazer isso, soh q a minha imagem tah aparecendo muito pequena… não tem um jeito de aumentá-la?
[quote=oitathi]Eu tô tentando fazer isso, soh q a minha imagem tah aparecendo muito pequena… não tem um jeito de aumentá-la?
[/quote]
Olá oitathi… então… o tamanho do meu icone está em 25x25 dá pra visualizar bem…
mais entra nesse site…
http://www.chami.com/html-kit/services/favicon/
faz o upload da imagem… que o proprio site monta um icone com um tamanho padrão, faça o download e depois só ver se fica legal…
abraços
Obrigado, me ajudou muito!!
A classe JFrame tem um método chamado setIconImage.
Você pode passar para ele um IconImage, que se não me engano recebe uma String com o caminho da imagem no disco como parâmetro.
Pessoal eu n to conseguindo fazer da maneira que todos fizeram… está dando erro eu vou mostrar o código:
import java.awt.Color;
import java.awt.Font;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.ParseException;
import javax.print.DocFlavor.URL;
import javax.swing.*;
import org.omg.PortableInterceptor.SYSTEM_EXCEPTION;
public class Tela_Login extends JFrame {
private static final long serialVersionUID=1;
private JLabel l_titulo, l_login, l_senha;
private JTextField c_login;
private JPasswordField senha_char;
private JButton bt_confirmar, bt_cadastro;
int resposta;
InputMap bla=this.getRootPane().getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW);
public Tela_Login(){
setTitle("Login");
setBounds(380,180,450,320);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
setResizable(false);
setLayout(null);
l_titulo = new JLabel("Para Acessar, Digite Aqui!");
l_titulo.setBounds(130,30,250,20);
l_titulo.setFont(new Font("Arial", Font.BOLD, 17));
this.add(l_titulo);
Font fonte = new Font("Arial", Font.CENTER_BASELINE, 14);
l_login = new JLabel("Login: ");
l_login.setBounds(60,95,50,20);
l_login.setFont(fonte);
this.add(l_login);
l_senha = new JLabel("Senha: ");
l_senha.setBounds(60,155,60,20);
l_senha.setFont(fonte);
this.add(l_senha);
c_login = new JTextField();
c_login.setBounds(140,95,200,20);
this.add(c_login);
senha_char = new JPasswordField();
senha_char.setBounds(140,155,200,20);
this.add(senha_char);
bt_confirmar = new JButton("Confirmar");
bt_confirmar.setBounds(105, 220, 100, 30);
bt_confirmar.setBackground(new Color(162, 181, 205));
bt_confirmar.setForeground(Color.WHITE);
this.add(bt_confirmar);
bt_cadastro = new JButton("Cadastro");
bt_cadastro.setBounds(245, 220, 100, 30);
bt_cadastro.setBackground(new Color(162, 181, 205));
bt_cadastro.setForeground(Color.WHITE);
this.add(bt_cadastro);
URL url = this.getClass().getResource("Imagens/logo_projeto.png");
Image imagemTitulo = Toolkit.getDefaultToolkit().getImage(url);
this.setIconImage(imagemTitulo);
bt_confirmar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evet){
if(evet.getSource() == bt_confirmar){;
if (c_login.getText().equals("") || senha_char.getText().equals(""))
{
JOptionPane.showMessageDialog(null,"Preenchimento Incorreto, Preencha Todos os Campos!");
}
else
{
dispose();
Tela_Apresentacao inicio = new Tela_Apresentacao();
inicio.setVisible(true);
}
c_login.setText("");
senha_char.setText("");
}
}
});
this.add(bt_confirmar);
bt_cadastro.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
resposta = JOptionPane.showOptionDialog(null,"Deseja Cadastrar?","Cadastro",JOptionPane.YES_NO_OPTION, DISPOSE_ON_CLOSE, null, null, null);
if (resposta == JOptionPane.YES_OPTION) {
// verifica se o usuário clicou no botão YES
Tela_Cadastro_de_Funcionario func;
try {
func = new Tela_Cadastro_de_Funcionario();
func.setVisible(true);
} catch (ParseException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
});
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Tela_Login login = new Tela_Login();
login.setVisible(true);
}
}
estava conseguindo trocar a imagem direto pelo método setTrocarIcone, depois que criei uma classe para chamar o jFrames , nenhuma está dando certo
colega depois que eu coloco a url o programa não aparece mais na tela