大家都来看看我的java程序,到底错在哪里呢?
/*
* @(#)SimpleWidgetApplet.java 2003/6/8
*/
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
/*
*演示简单的窗口小部件的使用,它包括Button,Checkbox(Radio),
*Choice,Label和List.
*@Version 1.00 2003/6/8
*@author 刘军
*@since JDK1.41
*/
public class SimpleWidgetApplet extends Applet implements ActionListener
{
/*
* Checkbox的选择结果,
* 选择为"今天是星期一",不选择为"今天不是星期一".
* @serial
* @see java.awt.Checkbox#getState()
*/
public boolean whichday=false;
/*
* Choice组件的选择结果
* @serial
* @see java.awt.Choice#getSelectedItem()
* /
public String ChoiceItem="Choice Item1";
/*
*Checkbox组件的另一种形式,Radio组件的选择结果
*@serial
*@see java.awt.CheckboxGroup#getSelectedCheckbox()
*@see java.awt.Checkbox#getLabel()
*/
public String RadioItem="Radio Item 1";
/*
* List组件的选择结果
* @serial
* @see java.awt.List#getSelectedItem()
*/
public String ListItem;
/*
* 定义button组件实例
* @serial
*/
public Button btn;
/*
* 构造Checkbox组件
* @serial
*/
public Checkbox checkbox=new Checkbox("今天是星期一");
/*
* 构造Choice组件
* @serial
*/
public Choice choice=new Choice();
/*
* 构造CheckboxGroup组件
* 用于Radio组件
* @serial
*/
public CheckGroup myCheckBoxGroup=new CheckboxGroup();
/*
* Label 组件构造
* 显示提示信息
* @serial
*/
Label label=new Label("点击“显示选择结果”按钮显示当前的选择。");
/*
* 构造List组件
* 允许显示4行, 不允许item的多项选择
* @serial
*/
List list=new List(4,false);
/*
* 设置并增加组件
*/
public void init()
{
//为"确定"按钮增加事件监听器
btn=new Button("显示选择结果");
btn.addActionListener(this);
add(btn);
//设置并增加choice组件
choice.add("Choice Item 1");
choice.add("Choice Item 2");
choice.add("Choice Item 3");
add(choice);
//设置并增加List组件
List.add("List Item 1");
List.add("List Item 2");
List.add("List Item 3");
List.add("List Item 4");
List.add("List Item 5");
//增加CheckBox组件
add(checkbox);
//设置并增加Radio组件
add(new Checkbox("Radio Item1",myCheckBoxGroup,true));
add(new Checkbox("Radio Item2",myCheckBoxGroup,true));
add(new Checkbox("Radio Item3",myCheckBoxGroup,true));
//增加Label组件
add(Label);
//增加List组件
add(List);
}
/*
* 处理"显示选择结果"按钮事件
* /
public void actionPerformed(ActionEvent ev)
{
String label=ev.getActionCommand();
if (label.equals("显示选择结果"))
{
//得到各个组件当前状态
whichday=Checkbox.getState();
ChoiceItem=choice.getSelectedItem();
RadioItem=myCheckBoxGroup.getSelectedCheckbox().getLabel();
ListItem=list.getSelectedItem();
}
repaint();
}
/*
* 显示结果
*/
public void paint(Graphics g)
{
g.drawString("当前的选择如下:",20,160);
if (whichday)
g.drawString("今天是星期一",20,180);
else
g.drawString("今天不是星期一",20,180);
g.drawString(ChoiceItem,20,200);
g.drawString(RadioItem,20,220);
g.drawString(ListItem,20,240);
}
}
//---------------------------------------------------------------------
然后在dos中执行
javac -nowarn SimpleWidgetApplet.java
提示有10个errors,我只能看到最后5条,(另外再问一下如何分屏看到错误提示)
提示如下:
eferenced from a static context
List.add("List Item 4");
^
SimpleWidgetApplet.java:102: non-static method add(java.lang.String) cannot be r
eferenced from a static context
List.add("List Item 5");
^
SimpleWidgetApplet.java:112: cannot resolve symbol
symbol : variable Label
location: class SimpleWidgetApplet
add(Label);
^
SimpleWidgetApplet.java:115: cannot resolve symbol
symbol : variable List
location: class SimpleWidgetApplet
add(List);
^
SimpleWidgetApplet.java:147: cannot resolve symbol
symbol : variable ChoiceItem
location: class SimpleWidgetApplet
g.drawString(ChoiceItem,20,200);
^
10 errors
希望大家能帮我看看,谢谢了