0

ステージの初期の高さと幅が次のように定義されたJavaFXアプレットがあります。

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

さらに、レイアウトのために高さと幅にバインドされた要素がシーンにレイアウトされています。すべてがデスクトッププログラムとして正常に機能します。

ただし、次のコードを使用してアプレットとしてHTMLページに埋め込むと、アプレットのサイズは正しくなりますが、十分なスペースがあるにもかかわらず、シーンの幅と高さのプロパティはゼロに設定されます。

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

たとえば、式{stage.width.toString()}はに評価され0.0ます。どうしたの?FXコード内で、アプレットの実際の高さと幅を取得するにはどうすればよいですか?

4

1 に答える 1

4

はぁ...

私はこれをすばやく修正しました...明らかstage.widthにデスクトップモードでのみ機能しますが、stage.scene.widthアプレットとデスクトップアプリの両方で機能します...少なくとも私の場合は。将来のJavaFX開発者のためにこれをここに残して、彼らの心を祝福してください。

于 2009-08-16T02:52:10.563 に答える