什么叫“每层JPanel均为可见,即上2层的JPanel为“透明”” 不过你可以参考JLayerredPane
解决方案 »
- 一个面试题
- 请问:short s1=1;s1+=1; ...
- 有关组合(composition)的问题,请求好心人回答?
- 用HTTP实现大文件下载时,断点续传问题,欢迎讨论,分数追加...
- 一道外企软件公司笔试题,求详细解释~~~~
- 请问以下这种本科毕业生 到上海或广州的工资是多少? 好找工作吗??
- 吐血跪求经典答案~~写JAVA APPLICATION的时候应该遵循什么原则,含泪求字数在300以内的经典答案
- 请问java怎么实现http,ftp文件下载,原理是什么???
- 有用JBuilder做过简单的编辑器的大虾吗?请进来指点一二,高分相酬。
- 菜鸟关于applet的简单问题
- 哪里可以取得ant
- 究竟是什么问题?
import java.awt.event.*;
import javax.swing.*;
import com.borland.jbcl.layout.*;/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/public class Frame1 extends JFrame {
JPanel contentPane;
BorderLayout borderLayout1 = new BorderLayout();
JLayeredPane jLayeredPane1 = new JLayeredPane();
OverlayLayout2 overlayLayout21 = new OverlayLayout2();
JPanel jPanel1 = new JPanel();
JButton jButton1 = new JButton();
JPanel jPanel2 = new JPanel();
JButton jButton2 = new JButton();
BorderLayout borderLayout2 = new BorderLayout();
BorderLayout borderLayout3 = new BorderLayout();
JPanel jPanel3 = new JPanel();
JButton jButton3 = new JButton();
BorderLayout borderLayout4 = new BorderLayout(); //Construct the frame
public Frame1() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
//Component initialization
private void jbInit() throws Exception {
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(borderLayout1);
this.setSize(new Dimension(530, 446));
this.setTitle("Frame Title");
jLayeredPane1.setBackground(SystemColor.info);
jLayeredPane1.setLayout(overlayLayout21);
jPanel1.setBackground(Color.pink);
jPanel1.setLayout(borderLayout2);
jPanel1.setOpaque(false);
jButton1.setText("jButton1");
jPanel2.setBackground(Color.green);
jPanel2.setLayout(borderLayout3);
jPanel2.setOpaque(false);
jButton2.setText("jButton2");
jPanel3.setBackground(SystemColor.desktop);
jPanel3.setLayout(borderLayout4);
jPanel3.setOpaque(false);
jButton3.setText("jButton3");
contentPane.add(jLayeredPane1, BorderLayout.CENTER);
jLayeredPane1.add(jPanel1, null);
jPanel1.add(jButton1, BorderLayout.NORTH);
jLayeredPane1.add(jPanel2, null);
jPanel2.add(jButton2, BorderLayout.EAST);
jLayeredPane1.add(jPanel3, null);
jPanel3.add(jButton3, BorderLayout.SOUTH);
}
//Overridden so we can exit when window is closed
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
}
import java.awt.*;/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/public class Application1 {
boolean packFrame = false; //Construct the application
public Application1() {
Frame1 frame = new Frame1();
//Validate frames that have preset sizes
//Pack frames that have useful preferred size info, e.g. from their layout
if (packFrame) {
frame.pack();
}
else {
frame.validate();
}
//Center the window
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = frame.getSize();
if (frameSize.height > screenSize.height) {
frameSize.height = screenSize.height;
}
if (frameSize.width > screenSize.width) {
frameSize.width = screenSize.width;
}
frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);
frame.setVisible(true);
}
//Main method
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch(Exception e) {
e.printStackTrace();
}
new Application1();
}
}