0

誰かが Java プログラムから JFrame を起動することは可能ですが、JFrame が独自のウィンドウを作成する代わりに、Java プログラムがそれを既存のウィンドウに起動しますか? 次のようなクラスローダーを試すことを考えました:

    Class framed = WhateverClassThisIs.class.getClassLoader().loadClass("foo.class");
    JFrame launch = (JFrame) framed.newInstance();
    WhatEverJFrameBeingUsed.add(launch);

そして、それを現在使用しているコンテナに追加するだけです。しかし、クラスが別の JFrame (メイン クラスなど) を参照している場合、その JFrame を取得して同じ既存の JFrame に含めるにはどうすればよいでしょうか? PID、またはプログラムへの他の参照から Graphics オブジェクトを取得することは可能ですか?

編集:私はこれをLinux、XOrg、できればDebian Squeezeで行っています

4

1 に答える 1

0

はい、可能ですが、これを参照してください:

 JFrame frame1 = new JFrame("First Window");
 JPanel panel = new JPanel("Second Window");
 frame1.add(panel,BordeLayout.CENTER);
 frame1.setSize(300,300);
 frame1.setVisible(true);

JPanel は JFrame に含まれるコンポーネントです。メイン ウィンドウを別のメイン ウィンドウに含めることは違法ではありません。

于 2014-12-25T09:56:13.073 に答える