2009-10-11 5 views
0

J'ai besoin d'insérer une applet dans une ligne de table et d'obtenir la taille dynamique de cette ligne de table en fonction de la taille de la fenêtre du navigateur. Si je mets des valeurs fixes pour la largeur & hauteur dans le td-tag, il montre l'applet bien, mais je dois pouvoir le redimensionner en fonction des capacités de taille du client, donc l'utilisation de tailles fixes n'est pas la réponse.Comment faire pour dimensionner dynamiquement une applet dans une ligne

L'extrait ci-dessous devrait illustrer où mon problème est:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
    "http://www.w3.org/TR/html4/loose.dtd"> 

<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title>JavaAppletTest </title> 
    </head> 

    <body bgcolor="#6f6f6f" > 
     <table border="0" cellspacing="0" cellpadding="0" width="100%" > 
      <tr valign="top"> 
       <td><img src="images/myheader.jpg" alt="myheader.jpg"></td> 
       <td><img src="images/mylogo.jpg" alt="mylogo.jpg"></td> 
      </tr> 
      <tr > 
       <td colspan="2" > 
        <object codetype="application/java" 
          classid="java:applets.MyTestApplet.class"> 
         <param name="codebase" value="." > 
         <param name="archive" value="MyTestApplet.jar" > 
         <param name="code" value="applets.MyTestApplet" > 
        </object> 
       </td> 
      </tr> 
     </table> 
    </body> 
</html> 

Que dois-je faire pour rendre la dynamique rangée dimensions?

[edit] La réponse de jitter indique une solution possible. J'ai également besoin d'ajuster les tailles pertinentes lorsque l'utilisateur redimensionne la fenêtre: quel événement & comment je fais cela?

Répondre

1

Je suggère d'utiliser javascript pour écrire le tag object/embed et de calculer dynamiquement la taille.

Cela devrait essentiellement faire l'affaire, mais sachez que l'obtention de la largeur et de la taille correctes peut être difficile. Je vous renvoie à Finding the size of the browser window.

... 
<head> 
... 
    <script type="text/javascript"> 
    window.onresize = function(event) { 
     document.getElementById('myobject_tag').height = window.innerHeight; 
     document.getElementById('myobject_tag').width = window.innerWidth; 
    } 
    </script> 
</head> 
... 
<body bgcolor="#6f6f6f"> 
    <table border="0" cellspacing="0" cellpadding="0" width="100%"> 
    <tr valign="top"> 
     <td><img src="images/myheader.jpg" alt="myheader.jpg"></td> 
     <td><img src="images/mylogo.jpg" alt="mylogo.jpg"></td> 
    </tr> 
    <script type="text/javascript"> 
     var height = window.innerHeight; 
     var width = window.innerWidth; 
     document.write(
     '<tr><td colspan="2"><object id="myobject_tag"\n' + 
     'codetype="application/java"\n' + 
     'classid="java:applets.MyTestApplet.class"\n' + 
     'width="' + width + '"\n' + 
     'height="' + height + '"\n>' + 
     '<param name="codebase" value=".">\n' + 
     '<param name="archive" value="MyTestApplet.jar">\n' + 
     '<param name="code" value="applets.MyTestApplet">\n' + 
     '</object></td></tr>' 
    ); 
    </script> 
    </table> 
... 
+0

Merci, votre script fonctionne à 100% (sur firefox). Maintenant, je dois juste l'ajuster pour que la table soit en forme. – slashmais

+0

Aussi: Je dois ajuster les tailles lorsque l'utilisateur redimensionne la fenêtre. Y a-t-il un genre d'événement que je peux utiliser et comment? (Je suis nouveau dans Java/web development - normalement C++, et que personne ne vous dise qu'il est facile de ramasser Java si vous connaissez C++, ce n'est pas le cas: Java/web-dev est beaucoup plus diversifié/complexe.) – slashmais

+0

extrait de code amélioré. note javascript dans la tête et l'étiquette d'identification dans l'étiquette d'objet – jitter

Questions connexes