问一个关于java swing的一个图形化界面的问题。。。。麻烦会的解释下。。。。谢了。。。

在一本书上找了一段代码,输到一半。。。在星号处为什么会提示“类型Container中的方法add(String,Component)对于参数(login,String)不... 在一本书上找了一段代码,输到一半。。。在星号处为什么会提示“类型 Container 中的方法 add(String, Component)对于参数(login, String)不适用” 求高手解释下。。
代码如下:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class login {
static final int WIDTH=300;
static final int HEIGHT=150;
JFrame loginframe;
public void add(Component c,GridBagConstraints constraints,int x,int y,int w,int h){
constraints.gridx=x;
constraints.gridy=y;
constraints.gridwidth=w;
constraints.gridheight=h;
add (c,constraints, x, y, w, h);
}
login(){
loginframe=new JFrame("进销存登录系统");
loginframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
GridBagLayout lay=new GridBagLayout();
setLayout(lay);
***** loginframe.add(this,BorderLayout.WEST);
}
private void setLayout(GridBagLayout lay) {
// TODO Auto-generated method stub

}
}
展开
 我来答
Loblood
2011-10-17 · 超过25用户采纳过TA的回答
知道答主
回答量:74
采纳率:0%
帮助的人:67万
展开全部
loginframe在这里是一个JFrame对象吧,程序中调用了这个对象的add方法,也就是调用了标准jdk中的JFrame的add方法,除非重写那个ADD方法为add(Class a,String b)否则在JFrame从Container中继承来的方法中没有add(Class a,String b)当然报错了。
你看下你的主类是不是继承了什么比如JPanel什么的
peihanlin
2011-10-17 · TA获得超过136个赞
知道答主
回答量:86
采纳率:0%
帮助的人:56.8万
展开全部
小弟是初学者,对java也是一知半解,想向大哥学习,我想问几个问题:
1.
public void add(Component c,GridBagConstraints constraints,int x,int y,int w,int h){
constraints.gridx=x;
constraints.gridy=y;
constraints.gridwidth=w;
constraints.gridheight=h;
add (c,constraints, x, y, w, h);
}
方法算是递归还是死循环?
2.
private void setLayout(GridBagLayout lay) {
// TODO Auto-generated method stub

}
这个方法是想干什么的?难道就是给 GridBagLayout lay=new GridBagLayout();
setLayout(lay);
调用的嘛?那它能解决什么问题呢?

不过你问的问题我到是知道为什么,loginframe.add(this,BorderLayout.WEST);loginframe是frame类型的。它的add方法应该是这样的:
public Component add(Component comp, int index)
而你给的参数是this,而this只得时login这个对象,它不是component类型的,随意报错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
不落叶的柏树
2011-10-17 · TA获得超过612个赞
知道小有建树答主
回答量:139
采纳率:0%
帮助的人:193万
展开全部
首先,login 必须继承Component类,其次你的两个参数写反了,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式