過去半個小時裏,我一直在爲這個錯誤感到煩惱。 JPanel cannot be resolved to a type
但是,我輸入了javax.swing.JPanel;
,我看不到導致此問題的另一個原因。我發現沒有幫助好或其他問題。這個問題雖然有趣,但它是來自swing包的所有變量。我嘗試重新添加JRE System Library
(我使用eclipse),但這沒有任何幫助。以下是我正在使用的一些代碼;Java - [Var Type]無法解析
import javax.swing.JFrame;
import javax.swing.JLayeredPane;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JPopupMenu;
import javax.swing.JSeparator;
public class Workshop {
private JFrame window = new JFrame("Meejo WorkShop");
private JLayeredPane lpane = new JLayeredPane();
private JPanel panelBg = new JPanel();
private JPanel panelGame = new JPanel();
private JPanel panelProp = new JPanel();
private JPanel panelWork = new JPanel();
是一個問題的例子。所有變量都給出[Var Type] Cannot be resolved to a type
的錯誤超過rivate
和= ne
任何想法,爲什麼?如果是這樣,我該如何解決它?謝謝。
編輯:完整的代碼是;
package mj.workshop;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JFrame;
import javax.swing.JLayeredPane;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JPopupMenu;
import javax.swing.JSeparator;
public class Workshop {
private final JFrame window = new JFrame("Meejo WorkShop");
private final JLayeredPane lpane = new JLayeredPane();
private final JPanel panelBg = new JPanel();
private final JPanel panelGame = new JPanel();
private final JPanel panelProp = new JPanel();
private final JPanel panelWork = new JPanel();
private final JMenuBar windowMenu = new JMenuBar();
private final JMenu menuFile = new JMenu("File");
private final JMenu menuEdit = new JMenu("Edit");
private final JMenu menuHelp = new JMenu("Help");
// private JMenu menuTest = new JMenu("Test");
private final JMenuItem menuFileNew = new JMenuItem("New");
private final JMenuItem menuFileSave = new JMenuItem("Save");
private final JMenuItem menuFileSaveAs = new JMenuItem("Save As");
private final JMenuItem menuFileExit = new JMenuItem("Exit");
private final JMenuItem menuEditOptions = new JMenuItem("Options");
// private JMenuItem menuEditRedo = new JMenuItem("Redo");
// private JMenuItem menuEditUndo = new JMenuItem("Undo");
// private JMenuItem menuEditCopy = new JMenuItem("Copy");
// private JMenuItem menuEditCut = new JMenuItem("Cut");
// private JMenuItem menuEditPaste = new JMenuItem("Paste");
// private JMenuItem menuEditInsert_Comment = new
// JMenuItem("Insert Comment");
private final JMenuItem menuHelpSupport = new JMenuItem("Support");
private final JMenuItem menuHelpAbout = new JMenuItem("About");
private final JMenuItem menuHelpTips = new JMenuItem("Tips");
private final JPopupMenu menuHelpTipsPopUp = new JPopupMenu("Tips");
// private JMenuItem menuTestStart = new JMenuItem("Start");
// private JMenuItem menuTestPause = new JMenuItem("Pause");
// private JMenuItem menuTestStop = new JMenuItem("Stop");
int xSize, ySize;
public Workshop() {
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Toolkit tk = Toolkit.getDefaultToolkit();
xSize = ((int) tk.getScreenSize().getWidth());
ySize = ((int) tk.getScreenSize().getHeight());
window.setSize(xSize, ySize);
xSize = window.getWidth();
ySize = window.getHeight();
Image icon = Toolkit.getDefaultToolkit().getImage("images/icon.png");
window.setIconImage(icon);
window.setBackground(Color.WHITE);
window.setMinimumSize(new Dimension(600, 450));
setUpMenu();
Thread mainThread = new Thread();
mainThread.start();
window.setPreferredSize(new Dimension(xSize, ySize));
window.setLayout(new BorderLayout());
window.add(lpane, BorderLayout.CENTER);
lpane.setBounds(0, 0, 600, 400);
panelBg.setBackground(Color.WHITE);
panelBg.setBounds(0, 0, xSize, ySize);
panelBg.setOpaque(true);
panelProp.setBackground(new Color(235, 235, 235));
panelProp.setBounds(0, (int) (Math.round(ySize * 0.20)),
(int) (Math.round(xSize * 0.175)),
(int) (Math.round(ySize * 0.80)));
panelProp.setOpaque(true);
panelWork.setBackground(new Color(235, 235, 235));
panelWork.setBounds((int) (Math.round(xSize * 0.825)),
(int) (Math.round(ySize * 0.20)),
(int) (Math.round(xSize * 0.175)),
(int) (Math.round(ySize * 0.80)));
panelWork.setOpaque(true);
panelGame.setBackground(Color.BLUE);
panelGame.setBounds((int) (Math.round(xSize * 0.175)),
(int) (Math.round(ySize * 0.20)),
(int) (Math.round(xSize * 0.65)),
(int) (Math.round(ySize * 0.80)));
panelGame.setOpaque(true);
lpane.add(panelBg, new Integer(0), 0);
lpane.add(panelGame, new Integer(1), 0);
lpane.add(panelProp, new Integer(1), 0);
lpane.add(panelWork, new Integer(1), 0);
window.pack();
window.setVisible(true);
while (true) {
windowrefresh();
}
}
public void windowrefresh() {
try {
Thread.sleep(1000);
xSize = window.getWidth();
ySize = window.getHeight();
panelProp.setBounds(0, (int) (Math.round(ySize * 0.20)),
(int) (Math.round(xSize * 0.175)),
(int) (Math.round(ySize * 0.80)));
panelWork.setBounds((int) (Math.round(xSize * 0.825)),
(int) (Math.round(ySize * 0.20)),
(int) (Math.round(xSize * 0.175)),
(int) (Math.round(ySize * 0.80)));
panelGame.setBounds((int) (Math.round(xSize * 0.175)),
(int) (Math.round(ySize * 0.20)),
(int) (Math.round(xSize * 0.65)),
(int) (Math.round(ySize * 0.80)));
} catch (InterruptedException e) {
e.printStackTrace();
}
}
private void setUpMenu() {
menuFileSave.setEnabled(false);
menuFileSaveAs.setEnabled(false);
menuFile.add(menuFileNew);
menuFile.add(menuFileSave);
menuFile.add(menuFileSaveAs);
menuFile.add(new JSeparator());
menuFile.add(menuFileExit);
menuEdit.add(menuEditOptions);
// menuEdit.add(menuEditRedo);
// menuEdit.add(menuEditUndo);
// menuEdit.add(menuEditCopy);
// menuEdit.add(menuEditCut);
// menuEdit.add(menuEditPaste);
// menuEdit.add(menuEditInsert_Comment);
menuHelp.add(menuHelpSupport);
menuHelp.add(menuHelpAbout);
menuHelp.add(new JSeparator());
menuHelp.add(menuHelpTips);
// windowTest.add(menuTestStart);
// windowTest.add(menuTestPause);
// windowTest.add(menuTestStop);
windowMenu.add(menuFile);
windowMenu.add(menuEdit);
windowMenu.add(menuHelp);
// windowMenu.add(menuTest);
windowMenu.setFont(new Font("Arial", Font.PLAIN, 12));
window.setJMenuBar(windowMenu);
menuHelpTips.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent evt) {
if (evt.isPopupTrigger()) {
menuFileSave.setEnabled(true);
menuFileSaveAs.setEnabled(true);
}
}
@Override
public void mouseReleased(MouseEvent evt) {
if (evt.isPopupTrigger()) {
menuFileSave.setEnabled(true);
menuFileSaveAs.setEnabled(true);
}
}
});
}
}
您是否構建了應用程序?也許這個選項被禁用。確保已選中項目 - >自動構建。之後,做一個項目 - >清潔... –
不,他們不需要公開。在eclipse中,什麼庫顯示在項目屬性下?你有什麼看起來不錯 –
也許你的Java安裝被破壞或沒有與Eclipse正確關聯 –