把JPanel设为JFrame的内容面板,怎么向JPanel添加组件
用了setContentPane()把JPanel设成了JFrame的内容面板,可是向JPanel里添加组件为什么显示不出来?publicclassGridBagLayo...
用了setContentPane()把JPanel设成了JFrame的内容面板,可是向JPanel里添加组件为什么显示不出来?
public class GridBagLayoutWindow extends JFrame {
protected void partition(String name,
GridBagLayout gridbag,
GridBagConstraints c){
JFrame frame = new JFrame();
JPanel contentPane = new JPanel();
JButton button = new JButton(name);
gridbag.setConstraints(button, c);
contentPane.add(button);
frame.setContentPane(contentPane);
} 展开
public class GridBagLayoutWindow extends JFrame {
protected void partition(String name,
GridBagLayout gridbag,
GridBagConstraints c){
JFrame frame = new JFrame();
JPanel contentPane = new JPanel();
JButton button = new JButton(name);
gridbag.setConstraints(button, c);
contentPane.add(button);
frame.setContentPane(contentPane);
} 展开
2个回答
展开全部
setVisible(true);
设置容器的可见性、默认是不可见的
设置容器的可见性、默认是不可见的
追问
这个主函数里有~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
加一句这个button.setSize(100,100);试试
追问
加了还是不行啊,哎呀,我太菜了~~把整个代码贴过来吧。。
接着上面的:
public GridBagLayoutWindow(){
......
}
public static void main(String[] args) {
GridBagLayoutWindow window = new GridBagLayoutWindow();
window.setTitle("WFDesigner");
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.pack();
window.setVisible(true);
}
}
追答
public class GridBagLayoutWindow extends JFrame {
protected void partition(String name,
GridBagLayout gridbag,
GridBagConstraints c){
JPanel contentPane = new JPanel();
JButton button = new JButton(name);
gridbag.setConstraints(button, c);
contentPane.add(button);
this.setContentPane(contentPane);
}
public GridBagLayoutWindow(){
partition("aaa",new GridBagLayout(),new GridBagConstraints());
}
public static void main(String[] args) {
GridBagLayoutWindow window = new GridBagLayoutWindow();
window.setTitle("WFDesigner");
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.pack();
window.setVisible(true);
}
}
=========================以上是我根据你写的修改的
1.你给的代码不全,我也不知道你什么时候调用了protected void partition(String name,
GridBagLayout gridbag,
GridBagConstraints c)这个方法
2.你在partition里面去new一个Frame,然后再main里面又是对着window这个对象修改其属性,frame和window是两个完全没有关系的对象,你想显示window,却去修改frame,所以说没用
3.构造函数是我随便写的,我猜你是想这么用...
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询