0

私はこれらのステートメントの両方を使用するインターネット上の例に出くわしました:

dp.add( bg , new Integer( 50 ) );

(dpはJDesktopPaneオブジェクトであり、bgはJLabelです)

setLayeredPane( dp );

それらがどのように使用されているかを知りたい場合は、これが私が見ていたものです:http: //www.coderanch.com/t/329874/GUI/java/put-background-image-swing

私はJavaに関しては初心者であり、これら2つのステートメントだけでなく、残りの例も理解しています。そして、それらが何をしているのかわからないのは私を悩ませます。一番戸惑うのは「newInteger(50))」ですが、初心者にもわかりやすい説明をお願いします。よろしくお願いします。

前もって感謝します、

アレックス。

4

1 に答える 1

2

のドキュメントをJLayeredPane参照してください。

各レイヤーは個別の整数です。レイヤー属性は、add呼び出し中にオブジェクトComponentを渡すことでに設定できます。Integer例えば:

layeredPane.add(child, JLayeredPane.DEFAULT_LAYER);

また

layeredPane.add(child, new Integer(10));

デフォルトのレイヤー値の整数値はここにあります。


dp.add(lbl,new Integer(50));

上記は、の指定されたレイヤーを持つ()コンポーネントをJLabel追加lblします。50未満のレイヤーで追加されたコンポーネントは前にレンダリングされ、50を超えるレイヤーを持つコンポーネントはにレンダリングされます。つまり、単純な深さの順序で、レイヤーが大きいほど、より近いコンポーネントを参照します。JDesktopPaneJLayeredPane50dp

setLayeredPane( dp );

これにより、オブジェクト(おそらくサブクラスではないはずですJFrame)によって表される表現が、レイヤー化されたペインとして使用されるように設定されます。Swingのトップレベルコンテナがどのように機能するかは、関連するJavaチュートリアルで確認できます。ImagePaneTestdp

于 2012-08-08T18:06:40.850 に答える