【发布时间】:2013-06-21 10:41:28
【问题描述】:
我制作了一个示例代码来启动一个项目,只是重构另一个项目。
这是重构的:
package com.sh.st;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.SwingConstants;
public class Main extends JFrame implements ActionListener {
/**
*
*/
JMenuBar bar;
JMenu file, register;
JMenuItem close, search;
ImageIcon figure1= new ImageIcon("C:/Users/Victor/Downloads/Untitled.jpg");
//ImageIcon figure2= new ImageIcon("C:/Victor Rocha/carroicon.jpg");
JLabel Ibimagem1,Ibimagem2;
/**
*
*/
public Main()
{
bar= new JMenuBar();
file= new JMenu("file");
register= new JMenu("register");
register.setMnemonic(KeyEvent.VK_R);
file.setMnemonic(KeyEvent.VK_F);
close= new JMenuItem("Close");
close.addActionListener(this);
search= new JMenuItem("Search");
search.addActionListener(this);
Ibimagem1= new JLabel(figure1, JLabel.CENTER);
Ibimagem1.setVerticalTextPosition(SwingConstants.CENTER);
bar.add(file);
bar.add(register);
file.add(close);
register.add(search);
//register.add(carro);
//register.add(cliente);
//register.add(funcionario);
getContentPane().add(Ibimagem1);
setSize(800,600);
setTitle("SHST");
setJMenuBar(bar);
setDefaultCloseOperation(0);
//setIconImage(figure2.getImage());
WindowListener J=new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
};
addWindowListener(J);
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==close){
System.exit(0);
}
if(e.getSource()==search){
Search s= new Search();
s.setVisible(true);
}
}
}
这是原来的:
package com.professordelphi.locadora;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.SwingConstants;
public class Principal extends JFrame implements ActionListener {
JMenuBar barra;
JMenu arquivo, cadastro;
JMenuItem fechar, cliente, funcionario, carro;
ImageIcon figura1= new ImageIcon("C:/Victor Rocha/carro.jpg");
ImageIcon figura2= new ImageIcon("C:/Victor Rocha/carroicon.jpg");
JLabel Ibimagem1,Ibimagem2;
public Principal()
{
barra= new JMenuBar();
arquivo= new JMenu("Arquivo");
cadastro= new JMenu("Cadastro");
cadastro.setMnemonic(KeyEvent.VK_C);
arquivo.setMnemonic(KeyEvent.VK_A);
fechar= new JMenuItem("Fechar");
fechar.addActionListener(this);
carro= new JMenuItem("Carro");
carro.addActionListener(this);
cliente= new JMenuItem("Cliente");
cliente.addActionListener(this);
funcionario= new JMenuItem("Funcionario");
funcionario.addActionListener(this);
Ibimagem1= new JLabel(figura1, JLabel.CENTER);
Ibimagem1.setVerticalTextPosition(SwingConstants.CENTER);
barra.add(arquivo);
barra.add(cadastro);
arquivo.add(fechar);
cadastro.add(carro);
cadastro.add(cliente);
cadastro.add(funcionario);
getContentPane().add(Ibimagem1);
setSize(800,600);
setTitle("Sistema de Cadastro");
setJMenuBar(barra);
setDefaultCloseOperation(0);
setIconImage(figura2.getImage());
WindowListener J=new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
};
addWindowListener(J);
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==fechar){
System.exit(0);
}
if(e.getSource()==carro){
Carro k = new Carro();
k.setVisible(true);
}
if(e.getSource()==cliente){
Cliente c = new Cliente();
c.setVisible(true);
}
if(e.getSource()==funcionario){
Funcionario f= new Funcionario();
f.setVisible(true);
}
}
}
问题是,原来的e楼和重构的不是。我从重构中收到的错误是“选择不包含主要类型”。我看到很多关于这个主题的帖子,但没有一个能解决我的问题。这是我尝试过的一些小清单;
来源:Editor does not contain a main type
- 清理您的工作区并重建您的项目。
- 确保在项目属性 -> java 构建路径 -> 源中添加源文件夹。
- 关闭您的项目并重新打开它。
尝试使用 Eclipse 作为 Java 应用程序运行,有人对我应该怎么做有建议吗?
【问题讨论】: