JApplet устанавливает ширину и высоту на основе ширины и высоты окна в HTML из JavaScript - PullRequest
1 голос
/ 13 марта 2012

Я новичок, и это может быть простым исправлением. В настоящее время я получаю высоту и ширину окна с помощью javascript и хочу установить высоту и ширину апплета с помощью переменных javascript.

Вот мой код:

<html>
<title>Applet</title>
<head>

<script type="text/javascript">
var winW = 630, winH = 460;
if (document.body && document.body.offsetWidth) {
 winW = document.body.offsetWidth;
 winH = document.body.offsetHeight;
}
if (document.compatMode=='CSS1Compat' &&
    document.documentElement &&
    document.documentElement.offsetWidth ) {
 winW = document.documentElement.offsetWidth;
 winH = document.documentElement.offsetHeight;
}
if (window.innerWidth && window.innerHeight) {
 winW = window.innerWidth;
 winH = window.innerHeight;
}
</script>


</head>
<body>
<script type="text/javascript">
document.writeln('Window width = '+winW);
document.writeln('Window height = '+winH);
</script>
<applet code="applet.class" 
        archive="applet7.jar, collections-generic-4.01.jar, colt-1.2.0.jar, jung-api-2.0.1, neo4j-kernel-1.6.M01.jar, blueprints-core-1.1.jar, jung-visualization-2.0.1.jar, jung-algorithms-2.0.1.jar, jung-3d-2.0.1.jar, jung-jai-samples-2.0.1.jar, jung-3d-demos-2.0.1.jar, jung-samples-2.0.1.jar, jung-io-2.0.1.jar, jung-graph-impl-2.0.1.jar, jung-jai-2.0.1.jar, blueprints-graph-sail-1.1.jar, blueprints-dex-graph-1.1.jar, blueprints-neo4j-graph-1.1.jar, blueprints-graph-jung-1.1.jar, blueprints-neo4jbatch-graph-1.1.jar, blueprints-sail-graph-1.1.jar, blueprints-orient-graph-1.1.jar, collections-generic-4.01.jar, blueprints-rexster-graph-1.1.jar, jta.jar, lucene-core-3.1.0.jar, neo4j-lucene-index-1.6.M01.jar, neo4j-remote-graphdb-0.8-1.2.M06.jar"
        width="1300" height="700">

</applet>

</body>
</html>

Я хочу, чтобы код: width="1300" height="700" был: ширина = высота winW = winH. Я хочу, чтобы значения переменных были заданы ширине и высоте в тегах <applet>.

Может кто-нибудь сказать мне, как это сделать?

Пожалуйста, дайте мне знать, если мне нужно уточнить.

Ответы [ 2 ]

0 голосов
/ 14 марта 2012

Используйте deployJava.js, чтобы написать элемент апплета. См. этот пример использования его для апплета фиксированного размера.

<script src="http://www.java.com/js/deployJava.js"></script>
<script>
    var attributes = {codebase:'http://java.sun.com/products/plugin/1.5.0/demos/jfc/Java2D',
                      code:'java2d.Java2DemoApplet.class',
                      archive:'Java2Demo.jar',
                      width:710, height:540} ;
    var parameters = {fontSize:16} ;
    var version = '1.6' ;
    deployJava.runApplet(attributes, parameters, version);
</script>

Вы бы добавили это непосредственно перед закрытием раздела head и изменили бы его на что-то вроде:

<script src="http://www.java.com/js/deployJava.js"></script>
<script>
    var attributes = {codebase:'http://java.sun.com/products/plugin/1.5.0/demos/jfc/Java2D',
                      code:'java2d.Java2DemoApplet.class',
                      archive:'Java2Demo.jar',
                      width:winW, height:winH} ;
    var parameters = {fontSize:16} ;
    var version = '1.6' ;
    deployJava.runApplet(attributes, parameters, version);
</script>

Один неподдерживаемый способ получить полноэкранный апплет - указать ширину и высоту 100%. Если он вообще работает, он должен корректироваться при изменении размера окна браузера.


Возможно, это приложение. Лучше всего кодировать как фрейм и запускать по ссылке, используя Java Web Start . Динамический размер кадра гораздо проще и надежнее, чем для апплета.

0 голосов
/ 14 марта 2012

Один из способов - написать апплет внутри document.writeln() вот так ...

document.writeln('<applet code="Dummy.class" width="'+winW+'" height="'+winH+'">');
...