Clicar em imagem

8 respostas
J

Bom dia pessoal
Estou com uma dúvida e nao sei como resolver, seguinte: estou desenvolvendo um site e nesse site estou colocando alguns applets, estou fazendo em java normal usando AWT (mas se alguem souber em Swing nao tem problema), fiz um .java simples apenas com a logo da empresa para a qual estou desenvolvendo o site, adicionei isso q fiz em um applet no site, trankilo, agora kero fazer com q ao clicar nessa imagem va para o home do site, tem como? alguem pode me ajudar?

8 Respostas

R

Sugiro uma solução com Swing: coloque a imagem num JLabel e use o evento mouseClicked() do JLabel.

J

vc nao conhece nada parecido em AWT?
Teria como me dar um exempl? Onde eu coloco o caminho do arkivo HTML nesse evento?

R

Infelizmente não entendo de applets, mas se você puser “applet swing” no Google creio que haverá vários exemplos a consultar.

J

blz
mas msm assim nao tem como vc me dar um exemplo do q falou em Swing msm,sem ser applet?

R

Como usar JLabel’s:

http://java.sun.com/docs/books/tutorial/uiswing/components/label.html

Para “amarrar” um processador de eventos de mouse ao JLabel (e portanto processar cliques), use JLabel.addMouseListener().

J

fui no link q vc falou
e fiz o exemplo q estava la, o problema eh o seguinte: nao sie onde colocar o evento para abrir o link, mas o problema maior eh q nao esta abrindo a imagem no IE,soh no FF
alguem sabe pq?

import java.awt.GridLayout;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JApplet;
import javax.swing.ImageIcon;
import javax.swing.UIManager;
import javax.swing.SwingUtilities;


public class Teste extends JApplet {
    
    public Teste() {

        JLabel label1;

        ImageIcon icon = createImageIcon("logo.gif","");
     
        label1 = new JLabel(icon);
        add(label1);
        
    }

    public static ImageIcon createImageIcon(String filename, String description) {

        java.net.URL imgURL = Teste.class.getResource(filename);
        /*if (imgURL != null) {
            return new ImageIcon(imgURL, description);
        } else {
            System.err.println("Couldn't find file: " + filename);*/
            return null;
        }
    //}

   private static void createAndShowGUI() {
        //Create and set up the window.
        JFrame frame = new JFrame("LabelDemo");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        //Add content to the window.
        frame.add(new Teste());

        //Display the window.
        frame.pack();
        frame.setVisible(true);
    }


    public static void main(String[] args) {
       
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
		
	        UIManager.put("swing.boldMetal", Boolean.FALSE);
		createAndShowGUI();
            }
        });
    }
}
R

Segue exemplo de como tratar o evento de clique:

label1.addMouseListener(new MouseListener() {
  public void mouseClicked(MouseEvent e) {
    // ... Trate o evento aqui ...
  }

  public void mousePressed(MouseEvent e) { }
  public void mouseReleased(MouseEvent e) { }
  public void mouseEntered(MouseEvent e) { }
  public void mouseExited(MouseEvent e) { }
});

Quanto à imagem que aparece no Firefox mas não no Internet Explorer, pode ser uma questão de configurações de segurança.

J

desculpa a ignorancia, mas estou começando agora, o q coloco dentro do evento mouseClicked(MouseEvent e) { } para que uma pagina html seja aberta???

Criado 3 de julho de 2009
Ultima resposta 3 de jul. de 2009
Respostas 8
Participantes 2