Muitas vezes pode ser útil delegar uma tarefa de dentro de uma applet para ser realizada via JavaScript, como por exemplo, o simples download de um arquivo. Isso nos economiza algumas centenas de linhas de código.
O código a seguir mostra como podemos invocar de dentro da uma applet a função javascript alertar com um parâmetro "Mensagem qualquer".
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JApplet;
import javax.swing.JButton;
public class AppletTeste extends JApplet {
private JButton btnJavaScript;
public void init() {
inicializaTela();
}
private void inicializaTela() {
setSize(250, 50);
btnJavaScript = new JButton("Testar JavaScript de uma Applet");
btnJavaScript.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
chamarJavaScript();
}});
add(btnJavaScript);
}
private void chamarJavaScript() {
JSObject win = JSObject.getWindow(this);
win.call("alertar", new Object[]{"Mensagem qualquer"});
}
}
Para compilar este exemplo, é necessário fazer uma referência a classe plugin.jar que está localizada na pasta lib do seu jre, da seguinte forma:
javac -cp "localizacao_do_seu_jre\lib\plugin.jar" AppletTeste.java
Agora, vamos criar a página html para que a applet possa ser exibida:
<applet code="AppletTeste.class" mayscript="" height="50" width="250">
</applet>
<script language="javascript">
function alertar(msg) {
alert(msg);
}
</script>
Um comentário:
Excelente! Era disso que eu precisava!
Postar um comentário