| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 18282 人关注过本帖
标题:cannot resolve symbol问题重提
取消只看楼主 加入收藏
name_lx
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-5-19
收藏
 问题点数:0 回复次数:7 
cannot resolve symbol问题重提

网上和论坛都找了,没一个能确切的说出问题的所在,所以我就重提一下了,希望有人能真正解释解释,好让我们这些新手能继续学下去!!!

我的程序的这样的,居然有95个变量没有定义的错误,有兴趣的可以看看!!!

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.io.*;
class FileName implements FilenameFilter //
{
String str=null;
FileName(String s)
{
str=" . "+s;
}
public boolean accept(File dir,String name)
{
return name.endsWith(str);
}
}
public class TestArea extends JPanel implements ActionListener,ItemListener,Runnable
{
Choice list=null; //
JTextArea 试题显示区=null,消息区=null;
JcheckBox box[];
JButton 提交该题答案,读取下一题,查看分数; //
ReadTestquestion 读取试题=null; //
JLabel welcomeLabel=null; //
Thread countTime=null; //
long time=0; //
JTextField timeShow=null; //
boolean 是否关闭计时器=false,是否暂停计时器=false;
JButton 暂停或继续计时=null;
public TestArea()
{
list=new Choice();
//
String 当前目录=System.getProperty("user.dir");
File dir=new File(当前目录);
FileName fileTxt=new FileName("txt");
String fileName[]=dir.list(fileTxt); //
for(int i=0;i<fileName.length;i++)
{
list.add(fileName[i]);
}

试题显示区=new JTextArea(15,12);
试题显示区.setLineWrap(true); //
试题显示区.setWrapStyleWord(true); //
试题显示区.setFont(new Font("TimesRoman",Font.PLAIN,14));
试题显示区.setForeground(Color.blue);
消息区=new JTextArea(8,8);
消息区.setForeground(Color.blue);
消息区.setLineWrap(true);
消息区.setWrapStyleWord(true);

countTime=new Thread(this); //
String s[]=:"A","B","C","D"};
box=new JCheckBox[11];
for(int i=0;i<11;i++)
{
box[i]=new JCheckBox(s[i]);
}
暂停或继续计时=new JButton("暂停计时");
暂停或继续计时.addActionListener(this);
提交该题答案=new JButton("提交该题答案");
提交该题答案.setForeground(Color.blue);
读取下一题=new JButton("读取第一题");
读取下一题.setForeground(Color.blue);
查看分数=new JButton("查看分数");
查看分数.setForeground(Color.blue);
提交该题答案.setEnabled(false);
提交该题答案.addActionListener(this);
读取下一题.addActionListener(this);
查看分数.addActionListener(this);
list.addItemListener(this);
读取试题=new ReadTestquestion();
JPanel pAddbox=new JPanel();
for(int i=0;i<11;i++)
{
pAddbox.add(box[i]);
}
Box boxH1=Box.createVerticalBox(),boxH2=Box.createVerticalBox(),baseBox=Box.createHorizontalBox(); //
boxH1.add(new JLabel("选择试题文件"));
boxH1.add(list);
boxH1.add(new JScrollPane());
boxH1.add(查看分数);
timeShow=new JTextField(20);
timeShow.setHorizontalAlignment(SwingConstants.RIGHT); //
timeShow.setEditable(false);
JPanel p1=new JPanel();
p1.add(new JLabel("剩余时间:"));
p1.add(timeShow); //
p1.add(暂停或继续计时);
boxH1.add(p1);
boxH2.add(new JLabel("试题内容:"));
boxH2.add(new JScrollPane(试题显示区));
JPanel p2=new JPanel();
p2.add(pAddbox); //
p2.add(提交该题答案);
p2.add(读取下一题);
boxH2.add(p2);
baseBox.add(boxH1);
baseBox.add(boxH2);
setLayout(new BorderLayout());
add(baseBox,BorderLayout.CENTER);
welcomeLabel=new JLabel("欢迎考试,提高英语水平",JLabel.CENTER);
welcomeLabel.setFont(new Font("隶书",Font.PLAIN,24));
welcomeLabel.setForeground(Color.blue);
add(welcomeLabel,BorderLayout.NORTH);

}
public void itemStateChanged(ItemEvent e)
{
timeShow.setText(null);
是否关闭计时器=false;
是否暂停计时=false;
暂停或继续计时.setText("暂停计时");
String name=(String)list.getSelectedItem();
读取试题.setFilename(name);
读取试题.set完成考试(false);
time=读取试题.getTime(); //
if(countTime.isAlive()) //
{
是否关闭计时器=true;
countTime.interrupt();
}
countTime=new Thread(this);

消息区.setText(null);
试题显示区.setText(null);
读取下一题.setText("读取下一题");
提交该题答案.setEnabled(false);
读取下一题.setEnabled(true);
welcomeLabel.setText("欢迎考试,你选择的试题:"+读取试题.getFilename());
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==读取下一题");
{
读取下一题.setText("读取下一题");
提交该题答案.setEnabled(true);
String contentTest=读取试题.getTestContent();
试题显示区.setText(contentTest);
消息区.setText(null);
读取下一题.setEnabled(false);
try(
coountTime.start(); //
}
catch(Exception event)
{
//
}
}
if(e.getSource()==提交该题答案)
{
读取下一题.setEnabled(true);
提交该提答案.setEnabled(false);
String answer="?";
for(int i=0;i<11;i++)
{
if(box[i].isSelected())
{
answer=box[i].getText();
box[i].setSelected(false);
break;
}
}
读取试题.setSelection(answer);
}
if(e.getSource()==查看分数)
{
int score=读取试题.getScore();
String messages=读取试题.getMessages();
消息区.setText("分数:"+score+"\n"+messages);
}
if(e.getSource()==暂停或继续计时)
{
if(是否暂停计时==false)
{
暂停或继续计时.setText("继续计时");
是否暂停计时=true; //
}
else if(是否暂停计时==true)
{
暂停或继续计时.setText("暂停计时");
是否暂停计时=false;
countTime.interrupt(); //
}
}
}
public synchronized void run() //
{
while(true)
{
if(time<=0)
{
是否关闭计时器=true;
countTime.interrupt(); //
提交该题答案.setEnabled(false); //
读取下一题.setEnabled(false); //
timeShow.setText("考试时间用尽,考试结束");
}
else if(读取试题.get完成考试())
{
是否关闭计时器=true;
timeShow.setText("考试结果:分数*剩余时间(秒)="+1.0*读取试题.getScore()*(time/1000));
countTime.interrupt(); //
提交该题答案.setEnabled(false); //
读取下一题.setEnabled(false); //
}
else if(time>=1)
{
time=time-1000;
long leftTime=time/1000; //
long leftHoer=leftTime/3600; //
long leftMinute(leftTime-leftHour*3600)/60; //
long leftSecond=leftTime%60; //
timeShow.setText(""+leftHour+" 小 时 "+leftMinute+" 分 "+leftSecond+" 秒 ");
}
try
{
Thread.sleep(1000); //
}
catch(InterruptedException ee)
{
if(是否关闭计时器==true)
return; //
}
while(是否暂停计时==true)
{
try
{
wait(); //
}
catch(InterruptedException ee)
{
if(是否暂停计时==false)
{
notifyAll(); //
}
}
}
}
}
}

搜索更多相关主题的帖子: resolve symbol cannot import java 
2006-05-19 09:20
name_lx
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-5-19
收藏
得分:0 
这个ReadTestquestion.java类已经编译成功了, 都有class文件了!
2006-05-19 16:01
name_lx
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-5-19
收藏
得分:0 

呵呵,跟据你的提示改了一下,还有94个错误哦!!!!
cannot resolve symbol 的错误!
不知道问题在哪,请高手解决一下!

2006-05-19 16:04
name_lx
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-5-19
收藏
得分:0 

上图为本人的错误!!!
图未经过处理,大了点!

图片有问题,故删除!!!

经过各位斑竹的提示,错误仍然只是减少了1个,请继续努力!!!
还是要谢谢大家的支持!!!
我会努力学习,将来和你们一样都棒棒的!!!

[此贴子已经被作者于2006-6-23 13:40:40编辑过]

2006-05-21 00:00
name_lx
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-5-19
收藏
得分:0 

不好意思,主页或许出了点小问题!!!

2006-05-21 13:28
name_lx
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-5-19
收藏
得分:0 
请有会的人告诉我哪错了啊!!!
2006-05-22 19:11
name_lx
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-5-19
收藏
得分:0 

那我就试试了,好多中文名啊!!!
看来要花个一二天了!!!
真谢谢你们了!!!

2006-05-24 13:34
name_lx
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-5-19
收藏
得分:0 

真是多谢啊,现在好象是可以运行了!!!
不过好象又有点小问题,等我找到再跟大家讨论讨论哦!!!
代码更改如下:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.io.*;
class FileName implements FilenameFilter //
{
String str=null;
FileName(String s)
{
str=" . "+s;
}
public boolean accept(File dir,String name)
{
return name.endsWith(str);
}
}
//试题显示区 a1
//消息区 a2
//提交该题答案 a3
//读取下一题 a4
//查看分数 a5
//读取试题 a6
//是否关闭计时器 a7
//是否暂停计时器 a8
//暂停或继续计时a9
//当前目录 b1
public class TestArea extends JPanel implements ActionListener,ItemListener,Runnable
{
Choice list=null; //
JTextArea a1=null,a2=null;
JCheckBox box[];
JButton a3,a4,a5; //
ReadTestquestion a6=null; //
JLabel welcomeLabel=null; //
Thread countTime=null; //
long time=0; //
JTextField timeShow=null; //
boolean a7=false,a8=false;
JButton a9=null;
public TestArea()
{
list=new Choice();
//
String b1=System.getProperty("user.dir");
File dir=new File(b1);
FileName fileTxt=new FileName("txt");
String fileName[]=dir.list(fileTxt); //
for(int i=0;i<fileName.length;i++)
{
list.add(fileName[i]);
}

a1=new JTextArea(15,12);
a1.setLineWrap(true); //
a1.setWrapStyleWord(true); //
a1.setFont(new Font("TimesRoman",Font.PLAIN,14));
a1.setForeground(Color.blue);
a2=new JTextArea(8,8);
a2.setForeground(Color.blue);
a2.setLineWrap(true);
a2.setWrapStyleWord(true);

countTime=new Thread(this); //
String s[]={"A","B","C","D"};
box=new JCheckBox[11];
for(int i=0;i<11;i++)
{
box[i]=new JCheckBox(s[i]);
}
a9=new JButton("暂停计时");
a9.addActionListener(this);
a3=new JButton("提交该题答案");
a3.setForeground(Color.blue);
a4=new JButton("读取第一题");
a4.setForeground(Color.blue);
a5=new JButton("查看分数");
a5.setForeground(Color.blue);
a3.setEnabled(false);
a3.addActionListener(this);
a4.addActionListener(this);
a5.addActionListener(this);
list.addItemListener(this);
a6=new ReadTestquestion();
JPanel pAddbox=new JPanel();
for(int i=0;i<11;i++)
{
pAddbox.add(box[i]);
}
Box boxH1=Box.createVerticalBox(),boxH2=Box.createVerticalBox(),baseBox=Box.createHorizontalBox(); //
boxH1.add(new JLabel("选择试题文件"));
boxH1.add(list);
boxH1.add(new JScrollPane());
boxH1.add(a5);
timeShow=new JTextField(20);
timeShow.setHorizontalAlignment(SwingConstants.RIGHT); //
timeShow.setEditable(false);
JPanel p1=new JPanel();
p1.add(new JLabel("剩余时间:"));
p1.add(timeShow); //
p1.add(a9);
boxH1.add(p1);
boxH2.add(new JLabel("试题内容:"));
boxH2.add(new JScrollPane(a1));
JPanel p2=new JPanel();
p2.add(pAddbox); //
p2.add(a3);
p2.add(a4);
boxH2.add(p2);
baseBox.add(boxH1);
baseBox.add(boxH2);
setLayout(new BorderLayout());
add(baseBox,BorderLayout.CENTER);
welcomeLabel=new JLabel("欢迎考试,提高英语水平",JLabel.CENTER);
welcomeLabel.setFont(new Font("隶书",Font.PLAIN,24));
welcomeLabel.setForeground(Color.blue);
add(welcomeLabel,BorderLayout.NORTH);

}
public void itemStateChanged(ItemEvent e)
{
timeShow.setText(null);
a7=false;
a8=false;
a9.setText("暂停计时");
String name=(String)list.getSelectedItem();
a6.setFilename(name);
a6.set完成考试(false);
time=a6.getTime(); //
if(countTime.isAlive()) //
{
a7=true;
countTime.interrupt();
}
countTime=new Thread(this);

a2.setText(null);
a1.setText(null);
a4.setText("读取下一题");
a3.setEnabled(false);
a4.setEnabled(true);
welcomeLabel.setText("欢迎考试,你选择的试题:"+a6.getFilename());
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==a4);
{
a4.setText("读取下一题");
a3.setEnabled(true);
String contentTest=a6.getTestContent();
a1.setText(contentTest);
a2.setText(null);
a4.setEnabled(false);
try{
countTime.start(); //
}
catch(Exception event)
{
//
}
}
if(e.getSource()==a3)
{
a4.setEnabled(true);
a3.setEnabled(false);
String answer="?";
for(int i=0;i<11;i++)
{
if(box[i].isSelected())
{
answer=box[i].getText();
box[i].setSelected(false);
break;
}
}
a6.setSelection(answer);
}
if(e.getSource()==a5)
{
int score=a6.getScore();
String messages=a6.getMessages();
a2.setText("分数:"+score+"\n"+messages);
}
if(e.getSource()==a9)
{
if(a8==false)
{
a9.setText("继续计时");
a8=true; //
}
else if(a8==true)
{
a9.setText("暂停计时");
a8=false;
countTime.interrupt(); //
}
}
}
public synchronized void run() //
{
while(true)
{
if(time<=0)
{
a7=true;
countTime.interrupt(); //
a3.setEnabled(false); //
a4.setEnabled(false); //
timeShow.setText("考试时间用尽,考试结束");
}
else if(a6.get完成考试())
{
a7=true;
timeShow.setText("考试结果:分数*剩余时间(秒)="+1.0*a6.getScore()*(time/1000));
countTime.interrupt(); //
a3.setEnabled(false); //
a4.setEnabled(false); //
}
else if(time>=1)
{
time=time-1000;
long leftTime=time/1000; //
long leftHour=leftTime/3600; //
long leftMinute=(leftTime-leftHour*3600)/60; //
long leftSecond=leftTime%60; //
timeShow.setText(""+leftHour+" 小 时 "+leftMinute+" 分 "+leftSecond+" 秒 ");
}
try
{
Thread.sleep(1000); //
}
catch(InterruptedException ee)
{
if(a7==true)
return; //
}
while(a8==true)
{
try
{
wait(); //
}
catch(InterruptedException ee)
{
if(a8==false)
{
notifyAll(); //
}
}
}
}
}
}

2006-05-24 22:33
快速回复:cannot resolve symbol问题重提
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019049 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved