2009-10-11 2 views
0

Мне нужно вставить апплет в таблицу-таблицу и получить высоту этой таблицы, чтобы динамически изменять размер в зависимости от размера окна браузера. Если я установил фиксированные значения для ширины & в тд-теге, он отлично отобразит апплет, но мне нужно изменить его размер в соответствии с возможностями размера клиента, поэтому использование фиксированных размеров не является ответом.Как получить апплет в таблице-строке для динамического размера

Сниппет ниже должна иллюстрировать, где моя проблема лежит:

<!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> 

Что мне нужно сделать, чтобы сделать-строки размеры динамически?

ответ дрожания указывает на возможное решение. Мне также нужно настроить соответствующие размеры, когда пользователь меняет размер окна: какое событие & как это сделать?

ответ

1

Я предлагаю использовать javascript для записи тега object/embed и расчета динамического размера.

Это должно сделать трюк в основном, но помните о том, что получение правильной ширины и размера может быть сложным. Я отсылаю вас к 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

Спасибо, ваш скрипт работает на 100% (по firefox). Теперь мне нужно просто настроить его, чтобы таблица соответствовала. – slashmais

+0

Также: мне нужно настроить размеры, когда пользователь изменяет размер окна. Есть ли какое-то событие, которое я могу использовать и как? (Я новичок в Java/веб-разработке, как правило, на C++, и пусть никто не скажет вам, что легко забрать Java, если вы знаете C++, это не так: Java/web-dev гораздо более разнообразный/сложный.) – slashmais

+0

расширенный фрагмент кода. обратите внимание на javascript в голове и тег id в теге объекта – jitter