【发布时间】:2017-06-08 09:06:07
【问题描述】:
我正在使用 Eclipse 3.7.0 进行插件开发,而我正在使用 Xtext 2.9.2。我的编辑器偏好设置不正常。
在 Windows 7、8、10 上会发生这种情况:
-
在 64 位版本上,我无法更改编辑器字体。点击更改按钮只会将鼠标更改为忙碌/沙钟一秒钟,然后再恢复正常。
- 在 Windows XP 上测试了相同的 64 位版本,一切正常。
在 32 位版本中,一切都按预期工作,并且出现 windows 字体选择器对话框。
这就是我创建偏好页面的方式:
@Override
protected void createFieldEditors() {
// Add show font preference
fontField = new FontFieldEditor(JFaceResources.TEXT_FONT, EDIT_EDITOR_FONT_LABEL, getFieldEditorParent());
addField(fontField);
fontField.setPreferenceStore(getPreferenceStore());
// initialize the font preference with the default resources font if not initialized
String defaultFont = getPreferenceStore().getDefaultString(JFaceResources.TEXT_FONT);
if(defaultFont.isEmpty()) {
font= JFaceResources.getTextFont();
if (font != null) {
FontData[] data= font.getFontData();
if (data != null && data.length > 0) {
PreferenceConverter.setDefault(getPreferenceStore(), JFaceResources.TEXT_FONT, data[0]);
}
}
}
}
.log 文件是空的,没有任何有用的信息。
调试的时候去org.eclipse.swt.widgets.FontDialog.java发现这行总是返回false,没有出现对话框。据我了解,这个调用应该是阻塞的,并且只会在对话框被 X、OK 或 Cancel 按钮关闭时返回,但它会立即返回 false。
/* Open the dialog */
boolean success = OS.ChooseFont (lpcf)
我也尝试了像 example 这样最小的东西,但同样的事情发生了。
【问题讨论】:
-
.log 文件中的任何内容。 Eclipse 3.7 已经很老了。
-
@greg-449 是的,不幸的是它已经很老了,但我必须使用它。此问题不会导致要写入的 .log 文件发生任何崩溃。我找不到任何 .log 文件。鼠标仅更改为沙钟/忙碌指针 1 秒钟,然后当我按更改时恢复正常,没有任何反应。
-
.log文件位于工作区.metadata目录中 - 在 macOS 或 Linux 上,文件和目录都隐藏。无需崩溃即可将内容写入日志。 -
好吧,我找到了。但是,当我单击更改时,什么都没有写下来。
-
@greg-449 请检查我的编辑。
标签: java eclipse fonts xtext pde