在一个JPanel中包含有另外两个JPanel组件,一个A显示背景,另一个B显示其他一些组件,B的范围小于A,且覆盖A的中间一部分,可行吗?请问如何作?多谢了!
解决方案 »
- 入门者学习门槛:关于源代码
- 在线等,这个程序里面的BufferedReader 的bf.readLine()为什么读不出来。
- 求高手解答!
- Java的线程同步问题-synchronized
- 求资源
- 关于paint() repaint() update()函数问题。
- 请教:该布局怎么对不齐?
- JDK问题???在线等。。。
- tomcat下面的数据库连接池问题,还没有解决!!
- 请问如何拆分String
- java播放音频文件的功能
- java.lang.UnsatisfiedLinkError: nativeGetVersion thrown while loading gnu.io.RXTXCommDriver
楼主【tainy_zhang】截止到2008-06-25 19:43:19的历史汇总数据(不包括此帖):
发帖数:5 发帖分:400
结贴数:5 结贴分:400
未结数:0 未结分:0
结贴率:100.00% 结分率:100.00%
敬礼!
class MyPanel extends Panel{
void go(){
this.setLayout(new BorderLayout());
Panel p1=new Panel();//背景
Panel p2=new Panel();
this.add(p1);
p1.setLayout(new GridLayout(3,3));
p1.add(p2,5);
}
}应该可以的
void go(){
this.setLayout(new BorderLayout());
Panel p1=new Panel();//背景
Panel p2=new Panel();
this.add(p1);
p1.setLayout(new GridLayout(3,3));
p1.add(p2,5);
}
}
import java.awt.Container;
import java.awt.Dimension;import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;public class SubPanel extends JFrame { private JPanel backPanel = new JPanel(); private JPanel forePanel = new JPanel(); public SubPanel() {
Container contentPane = this.getContentPane();
contentPane.add(backPanel);
backPanel.setSize(300, 300);
backPanel.setBackground(Color.BLUE);
forePanel.setPreferredSize(new Dimension(50, 50));
forePanel.setSize(new Dimension(50, 50));
JButton button = new JButton("JButton");
button.setBackground(Color.RED);
button.setForeground(Color.YELLOW);
forePanel.add(button);
contentPane.add(forePanel);
forePanel.setOpaque(false);
contentPane.setComponentZOrder(forePanel, 0);
} /**
* @param args
*/
public static void main(String[] args) {
SubPanel sp = new SubPanel();
sp.setVisible(true);
sp.setSize(300, 300);
sp.setDefaultCloseOperation(EXIT_ON_CLOSE);
}}
JPanel jPanelB=new JPanel();JButon jButton1=new JButton();
JButon jButton2=new JButton();JLabel jLabel1=new JLabel();
JLabel jLabel2=new JLabel();jPanelB.add(jLabel1);
jPanelB.add(jLabel2);jPanelB.add(jButton1);
jPanelB.add(jButton2);jPanel1.add(jPanelA);
jPanelA.add(jPanelB);//再设置一下各JPanel组件的Layout
Exception in thread "main" java.lang.IllegalArgumentException: illegal component position
at java.awt.Container.addImpl(Unknown Source)
at java.awt.Container.add(Unknown Source)
http://topic.csdn.net/u/20080627/10/0d6cb299-b930-468f-8be7-0e8fa9ede981.html