Swing component overlay AWT component
Hi all,
I know this has been asked a lot of times and it is a long running pain for developers. But I still need to seek your opinions:
My project needs me to implement JXPanel over AWT component in an AWT Frame.
How can it be done? Are there any Swing hack methods or programs to do this?
I have tried using Java 1.5 Container.setComponentZOrder() with Windows XP to set the Z-order. But it fails to set the z-order. My test code for using Container.setComponentZOrder() is as follows:
Frame headlessFrame = new Frame();
headlessFrame.setLayout(null);
headlessFrame.setUndecorated(true);
headlessFrame.setSize(1000,600);
JLayeredPane swingPane = new JLayeredPane();
swingPane.setSize(800,500);
Button awtButton = new Button("AWT Button");
awtButton.setSize(50,50);
Panel awtPanel = new Panel();
awtPanel.setSize(300,300);
awtPanel.add(awtButton);
JButton swingButton = new JButton("Swing Button");
swingButton.setSize(200,200);
JXPanel swingxPanel = new JXPanel();
swingxPanel.setSize(300,300);
swingxPanel.setAlpha(0.5f);
swingxPanel.add(swingButton);
headlessFrame.add(awtPanel);
headlessFrame.add(swingxPanel);
try{
headlessFrame.setComponentZOrder(awtPanel,1);
headlessFrame.setComponentZOrder(swingxPanel,0);
} catch(Exception e){
e.printStackTrace();
}
headlessFrame.setVisible(true);
Thks for the help. Rgds.

