Pergunta

Eu tenho um applet javafx com a altura e largura iniciais do palco definidas como tal:

var stage:Stage = Stage {
    title: "Blah"
    scene: Scene {
        height: 768
        width: 1024
        fill: Color.WHITE
...

Além disso, tenho elementos dispostos na cena que estão ligados à altura e largura para fins de layout. Tudo funciona bem como um programa de desktop.

No entanto, quando o incorporei em uma página HTML como um applet usando o código a seguir, o applet é dimensionado corretamente, mas as propriedades de largura e altura da minha cena estão definidas como zero, mesmo que haja muito espaço.

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Lol</title>
</head>
<body>
<h1>Lol</h1>
<script src="http://dl.javafx.com/1.2/dtfx.js"></script>
<div style="border:1px solid black">
<script>
    javafx(
        {
              archive: "Lol.jar",
              draggable: true,
              width: 1024,
              height: 768,
              code: "lol.Main",
              name: "Lol"
        }
    );
</script>
</div>
</body>
</html>

Por exemplo, a expressão {stage.width.toString()} avalia para 0.0. O que está acontecendo? Como posso, dentro do código FX, obter a altura e a largura reais do applet?

Foi útil?

Solução

Suspirar...

Eu consertei isso rapidamente ... aparentemente usando stage.width funciona apenas no modo de desktop, enquanto stage.scene.width Funciona para applets e aplicativos de desktop ... pelo menos no meu caso. Deixando isso aqui para futuros desenvolvedores de Javafx, abençoe seus corações.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top