当前位置:编程学习 > JAVA >>

java编程问题

(1)我的代码如下(初学者,抄的书),用的是JCreator LE

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class MyDataStruction extends JFrame {
 Container container;
 public MyDataStruction(){
  this.setTitle("欢迎进入数据结构学习系统");
  container = this.getContentPane();
  container.setLayout(new BorderLayout());
        JMenuBar menuBar = JMenuBar();
        buildMainMenu(menubar);
        this.setJMenuBar(menuBar);
        this.show(true);
        this.setSize(600,450);
       }

 protected void buildMainMenu(JMenuBar menuBar){
  JMenu fileMenu = new JMenu("文件(F)");
  fileMenu.setMnemonic(KeyEvent.VK_F);
  JMenuItem exitMenuItem = new JMenuItem("退出");
  exitMenuItem.setMnemonic(KeyEvent.VK_X);
  Item.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,ActionEvent.CTRL_MASK));
  exitMenuItem.addActionListener(new ExitActionListener());
  fileMenu.add(exitMenuItem);
  menuBar.add(fileMenu);
  JMenu libMenu = new JMenu("馆藏检索(B)");
  libMenu.setMnemonic(KeyEvent.VK_B);
  JMenuItem libMenuItem = new JMenuItem("节目检索");
  JMenu myBorrowMenuItem = new JMenuItem("我的借阅");
  libMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_L,ActionEvent.CTRL_MASK));
  libMenuItem.addActionListener(new BookInLibraryActionListener());
  myBorrowMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_M,ActionEvent.CTRL_MASK));
  myBorrowMenuItem.addActionListener(new MyBorrowActionListener());
  libMenu.add(libMenuItem);
  libMenu.add(myBorrowMenuItem);
  menuBar.add(libMenu);
  JMenu helpMenu = new JMenu("帮助(H)");
  helpMenu.setMnemonic(KeyEvent.VK_H);
  JMenuItem abouttMenuItem = new JMenuItem("关于");
  aboutMenuItem.setMnemonic(KeyEvent.VK_A);
  aboutMenuItem.addActionListener(new AboutActionListener());
  helpMenu.add(aboutMenuItem);
  menuBar.add(helpMenu);
 }

 class BookInLibraryActionListener implements ActionListener{
  public void actionPerformed(ActionEvent event){
   new JComboBoxDemo();
  }
 }

  class MyBorrowActionListener implements ActionListener{
  public void actionPerformed(ActionEvent event){
   new JRadioButtonDemo();
  }
 }

  class AboutActionListener implements ActionListener{
  public void actionPerformed(ActionEvent event){

  }
 }

  class ExitActionListener implements ActionListener{
  public void actionPerformed(ActionEvent event){
   setVisible(false);
   dispose();
   System.exit(0);
  }
 }

    public static void main(String[] args) {
     new MyDataStruction();

    }
}
(2)错误如下

E:\JavaApp\JCreator LE\MyProjects\MyDataStruction.java:10: 找不到符号
符号: 方法 JMenuBar()
位置: 类 MyDataStruction
        JMenuBar menuBar = JMenuBar();
                           ^
E:\JavaApp\JCreator LE\MyProjects\MyDataStruction.java:11: 找不到符号
符号: 变量 menubar
位置: 类 MyDataStruction
        buildMainMenu(menubar);
                      ^
E:\JavaApp\JCreator LE\MyProjects\MyDataStruction.java:22: 找不到符号
符号: 变量 Item
位置: 类 MyDataStruction
  Item.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,ActionEvent.CTRL_MASK));
  ^
E:\JavaApp\JCreator LE\MyProjects\MyDataStruction.java:29: 不兼容的类型
找到: javax.swing.JMenuItem
需要: javax.swing.JMenu
  JMenu myBorrowMenuItem = new JMenuItem("我的借阅");
                           ^
E:\JavaApp\JCreator LE\MyProjects\MyDataStruction.java:40: 找不到符号
符号: 变量 aboutMenuItem
位置: 类 MyDataStruction
  aboutMenuItem.setMnemonic(KeyEvent.VK_A);
  ^
E:\JavaApp\JCreator LE\MyProjects\MyDataStruction.java:41: 找不到符号
符号: 变量 aboutMenuItem
位置: 类 MyDataStruction
  aboutMenuItem.addActionListener(new AboutActionListener());
  ^
E:\JavaApp\JCreator LE\MyProjects\MyDataStruction.java:42: 找不到符号
符号: 变量 aboutMenuItem
位置: 类 MyDataStruction
  helpMenu.add(aboutMenuItem);
               ^
E:\JavaApp\JCreator LE\MyProjects\MyDataStruction.java:48: 找不到符号
符号: 类 JComboBoxDemo
位置: 类 MyDataStruction.BookInLibraryActionListener
   new JComboBoxDemo();
       ^
E:\JavaApp\JCreator LE\MyProjects\MyDataStruction.java:54: 找不到符号
符号: 类 JRadioButtonDemo
位置: 类 MyDataStruction.MyBorrowActionListener
   new JRadioButtonDemo();
       ^
注意:E:\JavaApp\JCreator LE\MyProjects\MyDataStruction.java 使用或覆盖了已过时的 API。
注意:要了解详细信息,请使用 -Xlint:deprecation 重新编译。
9 错误

追问:是可以了,谢谢你,不过下面这句话什么意思

注意:E:\JavaApp\JCreator LE\MyProjects\MyDataStruction.java 使用或覆盖了已过时的 API。
注意:要了解详细信息,请使用 -Xlint:deprecation 重新编译。

答案:
下面是在eclipse中调试后的代码,你可以试试
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;


import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.KeyStroke;


public class MyDataStruction extends JFrame {
Container container;


public MyDataStruction() {
this.setTitle("欢迎进入数据结构学习系统");
container = this.getContentPane();
container.setLayout(new BorderLayout());
JMenuBar menuBar = new JMenuBar();// 前面添加new
buildMainMenu(menuBar);// 拼写错误
this.setJMenuBar(menuBar);
this.show(true);
this.setSize(600, 450);
}


protected void buildMainMenu(JMenuBar menuBar) {
JMenu fileMenu = new JMenu("文件(F)");
fileMenu.setMnemonic(KeyEvent.VK_F);
JMenuItem exitMenuItem = new JMenuItem("退出");
exitMenuItem.setMnemonic(KeyEvent.VK_X);
exitMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,
ActionEvent.CTRL_MASK));
exitMenuItem.addActionListener(new ExitActionListener());
fileMenu.add(exitMenuItem);
menuBar.add(fileMenu);
JMenu libMenu = new JMenu("馆藏检索(B)");
libMenu.setMnemonic(KeyEvent.VK_B);
JMenuItem libMenuItem = new JMenuItem("节目检索");
JMenu myBorrowMenuItem = new JMenu("我的借阅");// 类写错了
libMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_L,
ActionEvent.CTRL_MASK));
libMenuItem.addActionListener(new BookInLibraryActionListener());
// myBorrowMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_M,
// ActionEvent.CTRL_MASK));
myBorrowMenuItem.setMnemonic(0);


myBorrowMenuItem.addActionListener(new MyBorrowActionListener());
libMenu.add(libMenuItem);
libMenu.add(myBorrowMenuItem);
menuBar.add(libMenu);
JMenu helpMenu = new JMenu("帮助(H)");
helpMenu.setMnemonic(KeyEvent.VK_H);
JMenuItem abouttMenuItem = new JMenuItem("关于");
abouttMenuItem.setMnemonic(KeyEvent.VK_A);// 拼写错误
abouttMenuItem.addActionListener(new AboutActionListener());// 拼写错误
helpMenu.add(abouttMenuItem);// 拼写错误
menuBar.add(helpMenu);
}


class BookInLibraryActionListener implements ActionListener {
public void actionPerformed(ActionEvent event) {
// new JComboBoxDemo();
System.out.println("你需要在这实现一个类叫做:JComboBoxDemo");
}
}


class MyBorrowActionListener implements ActionListener {
public void actionPerformed(ActionEvent event) {
// new JRadioButtonDemo();//
System.out.println("你需要在这实现一个类叫做:JRadioButtonDemo");
}
}


class AboutActionListener implements ActionListener {
public void actionPerformed(ActionEvent event) {
}
}


class ExitActionListener implements ActionListener {
public void actionPerformed(ActionEvent event) {
setVisible(false);
dispose();
System.exit(0);
}
}


public static void main(String[] args) {
new MyDataStruction();
}
}

上一个:java Graphics怎么使用
下一个:java DB是什么?

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,