Accueil
Accueil
Le
Club
Delphi
Kylix
C
C++
Java
J2EE
DotNET
& C#
Visual
Basic
Access
Pascal
Dev
Web
PHP
ASP
XML
UML
SQL
SGBD
Win
Linux
Autres



Certaines méthodes du JDK me demandent une Frame, Applet ne dérive pas de Frame, que faire ?
auteur : Clément Cunin
Principe :
Une solution semble exister au moins avec Netscape Navigator et Appletviewer, en effet ils placent les applets dans une Frame. Il suffit donc d'utiliser getParent() sur l'Applet pour récupérer cette Frame et s'en servir ( éventuellement de manière récursive jusqu'à récupérer la Frame ).

Exemple :

public java.awt.Frame getFrame() { Container container = this.getParent(); while( container != null ) { if( container instanceof Frame ) { return( (Frame)container ); } container = container.getParent(); } return(null); /** Ou une erreur */ }
Cet exemple retourne null si le parent n'est pas une java.awt.Frame.


Comment ouvrir une nouvelle page HTML ?
auteur : L'équipe Java
Il faut, dans l'applet, récupérer la page puis l'afficher, ceci pouvant être effectué suite à la pression d'un bouton.

URL recup; try { /** récupère l'URL à partir du document courant et "page.html" */ recup = new URL(getDocumentBase(), "page.html"); /** Affiche le document après avoir recupérer le contexte courant */ getAppletContext().showDocument(recup, option_frame); repaint(); } catch (MalformedURLException e) { /** un traitement quelconque si la page n'est pas correcte */ }
    Option_frame peut-être :
  • "_self" -> la frame courant
  • "_parent" -> la frame parente
  • "_top" -> la frame de base
  • "_blank" -> nouvelle fenetre
  • "un_nom" -> nouvelle fenêtre nommée.


Comment récupérer des arguments d'une page HTML dans une applet ?
auteur : L'équipe Java
Code HTML :
On initialise les différents paramètres lors de l'appel de l'applet:

<applet code=mon_code><param name=param1 value="xxx"><param name=param2 value="yyy"></applet>
Code Java :
Dans l'applet on récupère les résultats ainsi :

String param1 = getParameter("param1"); String param2 = getParameter("param2");

Comment afficher quelque chose dans la barre de statut d'un navigateur ?
auteur : L'équipe Java
Il faut utiliser la méthode showStatus(java.lang.String) sur un objet de type java.applet.AppletContext.


Comment faire communiquer deux applets ?
auteur : L'équipe Java
Les applets se trouvent dans la même frame HTML :
Il faut que l'applet ait été déclarée dans le code HTML de la sorte :

<applet code=.... name="tagname"></applet>

Alors il suffit de récupérer une applet à partir d'une autre de cette manière :

CType autre_applet = (CType)(getAppletContext().getApplet("tagname");
Si les applets sont déclarées dans des frames HTML différentes :
Comme le navigateur utilise généralement une seule JVM, l'espace mémoire est partagé. Une astuce est donc alors de créer une classe ne contenant que des membres statiques et permettant l'enregistrement et la récupération d'applet. Ces membres statiques seront uniques en mémoire et donc partagés entre les applets.

Un début de structure serait :

class AppletDataBase { /** Une structure de données permettant d'enregistrer les données */ static Hashtable data; /** Une méthode permettant de récuperer une applet grâce à son tag */ public static Applet getApplet(String tag); /** Une méthode chargée d'enregistrer une applet marquée par un tag */ public static void addApplet(Applet applet, String tag); }
Dans les applets on peut ainsi faire l'équivalent de ce qui est fait avec l'AppletContext :

Applet autre_applet = AppletDataBase.getApplet("tagname");

Mon applet ne marche pas avec un plugin Java, que faire ?
auteur : L'équipe Java
En fait pour faire marcher votre applet avec un plugin, il va falloir modifier le contenu de votre page HTML. La marche à suivre dépend de votre navigateur. Vous trouverez plus d'informations à l'adresse suivante : http://www.javasoft.com/products/plugin/1.3/docs/tags.html


Comment signer une applet ?
auteur : L'équipe Java
lien :  http://www.suitable.com/docs/signing.html

Comment jouer un son dans une applet ?
auteur : Clément Cunin
Même si les sons ont plutôt tendance à m'énerver quand je navigue sur la toile, voila un un bout de code pour faire faire du son à votre applet.

try { URL url = new URL("http://serveur.fr/monSon.au"); AudioClip ac = Applet.newAudioClip(url); ac.play(); } catch( MalformedURLException e ) { }


Consultez les autres F.A.Q's

Les codes sources présentés sur cette page sont libres de droits, et vous pouvez les utiliser à votre convenance. Pour le reste, ce document constitue une oeuvre intellectuelle protégée par les droits d'auteurs.

Ce document issu de http://www.developpez.com est soumis à deux licences, en fonction des contributeurs :

- Les contributions de Clément Cunin et Johann Heymes sont soumises aux termes de la la licence GNU FDL traduite en français ici. Permission vous est donnée de distribuer, modifier des copies des contributions de Clément Cunin et Johann Heymes tant que cette note apparaît clairement :
"Ce document issu de http://www.developpez.com est soumis à la licence GNU FDL traduite en français ici. Permission vous est donnée de distribuer, modifier des copies de cette page tant que cette note apparaît clairement".

- Pour ce qui est des autres contributions : Copyright © 2004 Developpez LLC : Tous droits réservés Developpez LLC. Aucune reproduction, ne peux en être faite sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vos questions techniques : forum d'entraide PHP - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Copyright 2000..2004 www.developpez.com