我的Java小程序在编译时出现问题,请指教(本人初学者)

源文件如下:importjava.awt.*;importjava.awt.event.*;publicclassTestCardLayoutimplementsActi... 源文件如下:

import java.awt.*;
import java.awt.event.*;
public class TestCardLayout implements ActionListener {
private Panel p1,p2,p3;
private Button b1,b2,b3;
private Frame f;
private CardLayout Clayout=new CardLayout();
public void create() {
b1=new Button("第一个");
b2=new Button("第二个");
b3=new Button("第三个");
p1=new Panel();
p2=new Panel();
p3=new Panel();
f=new Frame("Test CardLayout");
p1.add(b1);
b1.addActionListener(this);
p2.add(b2);
b2.addActionListener(this);
p3.add(b3);
b3.addActionListener(this);
f.setLayout(CLayout);
f.add(p1,"第一层");
f.add(p2,"第二层");
f.add(p3,"第三层");
f.setSize(200,100);
f.setVisible(true);
}
public static void main(String args[]) {
TestCardLayout tc=new TestCardLayout();
tc.create();
}
public void actionPerformed(ActionEvent e) {
CLayout.next(f);
}
}

编译时出现如下错误:

TestCardLayout.java:22: 找不到符号
符号: 变量 CLayout
位置: 类 TestCardLayout
f.setLayout(CLayout);
^
TestCardLayout.java:34: 找不到符号
符号: 变量 CLayout
位置: 类 TestCardLayout
CLayout.next(f);
^
2 错误

我觉得程序没错啊。。请指教!多谢各位前辈!
展开
 我来答
rostazheng
2009-08-01 · 超过15用户采纳过TA的回答
知道答主
回答量:92
采纳率:0%
帮助的人:44.6万
展开全部
//代码我帮你改好了,拷过去就可以用了,记得区分大小写,JAVA是有这个限制的!!

import java.awt.*;
import java.awt.event.*;

public class TestCardLayout implements ActionListener {
private Panel p1,p2,p3;
private Button b1,b2,b3;
private Frame f;

private CardLayout Clayout=new CardLayout();

public void create() {
b1=new Button("第一个");
b2=new Button("第二个");
b3=new Button("第三个");
p1=new Panel();
p2=new Panel();
p3=new Panel();
f=new Frame("Test CardLayout");
p1.add(b1);
b1.addActionListener(this);
p2.add(b2);
b2.addActionListener(this);
p3.add(b3);
b3.addActionListener(this);
f.setLayout(Clayout);
f.add(p1,"第一层");
f.add(p2,"第二层");
f.add(p3,"第三层");
f.setSize(200,100);
f.setVisible(true);
}
public static void main(String args[]) {
TestCardLayout tc=new TestCardLayout();
tc.create();
}
public void actionPerformed(ActionEvent e) {
Clayout.next(f);
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f9e465ef0c
2009-07-31 · TA获得超过765个赞
知道小有建树答主
回答量:359
采纳率:0%
帮助的人:239万
展开全部
f.setLayout(CLayout);->CLayout要改为Clayout(private CardLayout Clayout=new CardLayout() 要和这里的变量名完全一致,毕竟java是大小写敏感的)
CLayout.next(f);—>CLayout要改为Clayout,理由同上
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
citytalent
2009-07-31 · TA获得超过1222个赞
知道小有建树答主
回答量:542
采纳率:0%
帮助的人:579万
展开全部
f.setLayout(CLayout);

CLayout.next(f);

写错了
不是CLayout而是Clayout 注意l大小写,因为你定义的是
private CardLayout Clayout=new CardLayout();

小写的l
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ajax_2003
2009-07-31 · TA获得超过4995个赞
知道大有可为答主
回答量:2628
采纳率:0%
帮助的人:2482万
展开全部
CLayout 你的这个L写成大写的了, 你声明的时候是小写的

一概是
Clayout java是区分大小写的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
晨临雾散
2009-07-31 · TA获得超过577个赞
知道小有建树答主
回答量:799
采纳率:0%
帮助的人:0
展开全部
你定义的是Clayout下面你用CLayout当然不行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式