我有以下代码
cmd.printSuccess("Login Success !", form_name);
Cl_Main mainform = new Cl_Main(); //at this line, program stop, show Source Not Found
mainform.showFormAdmin(true);
cmd.printSuccess("Login Success 2!", form_name); // never made to this point
然后,程序显示
当我点击edit source lookup path
时
我的代码中可能缺少某些内容
public void showFormAdmin(boolean statusnya)
{
JMenuBar Menubar;
JMenu Filemenu, Mastermenu, Transactionmenu;
JMenuItem Logoutfilemenu,Exitfilemenu, Consolemastermenu, Usermastermenu, Dotransactionmenu, Viewtransactionmenu;
Menubar = new JMenuBar();
Filemenu = new JMenu(menu_filemenu);
Mastermenu = new JMenu(menu_mastermenu);
Transactionmenu = new JMenu(menu_transactionmenu);
Logoutfilemenu = new JMenuItem(new AbstractAction(menuitem_logoutfilemenu) {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
setVisible(false);
loginform.setVisible(true);
cmd.printSuccess("Logout Successfully !", form_name);
}
});
Exitfilemenu = new JMenuItem(new AbstractAction(menuitem_exitfilemenu) {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
System.exit(0);
}
});
Consolemastermenu = new JMenuItem(new AbstractAction(menuitem_consolemastermenu) {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
cmd.printSuccess("Show Menu Console", form_name);
// masterconsoleform.showMasterConsole();
}
});
Usermastermenu = new JMenuItem(new AbstractAction(menuitem_usermastermenu) {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
cmd.printSuccess("Show Menu User", form_name);
}
});
Dotransactionmenu = new JMenuItem(new AbstractAction(menuitem_dotransactionmenu) {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
cmd.printSuccess("Show Do Transaction", form_name);
}
});
Viewtransactionmenu = new JMenuItem(new AbstractAction(menuitem_viewtransactionmenu) {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
cmd.printSuccess("Show view trans", form_name);
}
});
Menubar.add(Filemenu);
Menubar.add(Mastermenu);
Menubar.add(Transactionmenu);
Filemenu.add(Logoutfilemenu);
Filemenu.add(Exitfilemenu);
Mastermenu.add(Consolemastermenu);
Mastermenu.add(Usermastermenu);
Transactionmenu.add(Dotransactionmenu);
Transactionmenu.add(Viewtransactionmenu);
if(statusnya)
{
Transactionmenu.setEnabled(statusnya);
Mastermenu.setEnabled(statusnya);
}
else
{
Transactionmenu.setEnabled(statusnya);
Mastermenu.setEnabled(!statusnya);
}
desktopnya = new JDesktopPane();
desktopnya.add(Menubar);
getContentPane().add(desktopnya,BorderLayout.CENTER);
setVisible(true);
setResizable(false);
setExtendedState(getExtendedState()|MAXIMIZED_BOTH);
setJMenuBar(Menubar);
setTitle(form_name);
}
老实说,我不明白是什么导致我的问题停止,并且不再继续显示Main
表格。
为什么eclipse会用Source not Found
消息警告?
如何解决这个问题?
答案 0 :(得分:0)
您正在尝试阅读EventDispatchThread的源代码,但是您无法找到它,因为您正在使用JRE。
下载JDK(Java开发工具包)并将其添加到Eclipse(Window => Preferences => Java => Installed JREs => Add ...)。使用安装目录(例如C:\Program Files\Java\jdk1.8.0_45
)
应自动添加Source,如果没有,请通过您获得的第二个Dialog添加它,源位于jdk的安装目录中,例如: C:\Program Files\Java\jdk1.8.0_45\src.zip
。
为什么不显示主窗体的问题是你得到的是StackOverFlowError,这意味着你有一个反复调用自己的方法。 必须在Cl_Main的构造函数中的某个位置,但是您没有为此提供代码。