我正在使用Eclipse Juno并且从未遇到任何问题,直到其内容辅助仅停止在我的代码的某些部分工作。下面的代码显示了我在说什么:
mWTBatch.setText("Here content assist works");
medCopyBtn.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
mWTBatch.setText(mRTBatch.getText());
mWTExp.setText(mRTExp.getText());
mWTName.setText(mRTName.getText());
mWTQuantity.setText(mRTQuantity.getText());
/* Here content assist is not working */
}
});
mWTBatch.setText("Here it is working again");
这段代码就在我班级的一个方法里面。问题是它在类的方法中工作正常,但在对象内部(new ActionListener(){})它返回"没有默认提议"。当我使用" Ctrl + space"它时会出现这种情况。或输入"。"在对象之后我想得到建议。我已经在这里搜索了解决方案并用Google搜索了,但无法找到解决方案。我已经尝试过了:
Window->Preferences->Editor->Content Assist->Advanced
并检查Java Proposals
。它没有用。我甚至尝试过自己查看,而不是仅使用Restore Defaults
。我也试过了另一张桌子上的Java Proposals
。没有。最后,我尝试用Java
检查所有字段。什么都没有用。worked
。didn't work
。ctrl+space
是否绑定到Eclipse设置上的内容辅助,这是可以的。我还检查了它是否与Windows 7语言栏的高级键设置无关。我在互联网上看到可能有问题,但不是我的情况。对于上面的前四个案例,我还清理了项目并关闭并重新打开它们,不要忘记在每次操作后刷新它们。谁能告诉我如何解决这个问题?我想找到解决这个问题的方法,以便其他人可能不会像我一样持续2天。我认为我的问题很重要,因为我在这里收集了许多通过Google搜索问题和StackOverflow找到的可能解决方案,并没有解决它。
答案 0 :(得分:2)
前几天我偶然发现了这个问题,在看到这篇文章之后,我认为我不得不忍受它。
然而,我确实找到了一个" hack"围绕它:
mWTBatch.setText("Here content assist works");
medCopyBtn.addActionListener( //<---------------------- Problem arises because we're inside a function declaration ...
new ActionListener()
{ // <--------------------------------------------- ... yet we're trying to write a function
public void actionPerformed(ActionEvent e)
{
/* Here content assist is not working */
}
}
);
mWTBatch.setText("Here it is working again");
从内容助手的角度来看,这是完全错误的,所以我们需要给它一点帮助:
mWTBatch.setText("Here content assist works");
medCopyBtn.addActionListener(
new ActionListener()
// <--------------------------------------------- CURLY BRACKET MISSING
public void actionPerformed(ActionEvent e)
{
/* Here content assist IS WORKING */
}
}
);
mWTBatch.setText("Here it is still working");
这显然会在编译时给您一个错误,但它可以让您完全访问其余函数声明的内容辅助。 此外,从函数声明中删除哪个花括号并不重要,只要它是一个开头的花括号。
另外一点,如果你只像我上面那样删除开口花括号,那么在大多数情况下,eclipse不会自动添加另一个结束花括号(因为当你输入新的开口花括号时,你&#39 ; ve 均衡开始vr关闭大括号)。你可以通过删除结束的花括号来解决这个问题,但是你必须记住要放回两个花括号。
希望这有助于1165观看这个问题在过去一年中获得了=)
答案 1 :(得分:0)
在开始菜单中搜索“更改显示语言”。 '更改键盘'&gt; 查看“常规”&gt; 下是否有任何非英语键盘'已安装的服务'。如果你不仅仅是英语,那么按Ctrl +空格键就可以将你的注意力从Eclipse改为任务栏上的语言选择器。如果这是你的问题,请从列表中删除任何其他键盘语言。