JEdi​​torPane是只读的

时间:2014-08-19 06:46:44

标签: java macos swing jeditorpane

我有一个使用JEditorPane的应用程序。我在Mac上和Java 6一切都没有任何问题(它是可编辑的)。现在,我正在运行Java 7,而Editor-Panel是只读的。 我试图调试,但只要我在任何地方使用断点,它就不再是只读的了。按下按钮时也是如此(除了打开消息窗口之外什么也没做)。虽然调整窗口大小没有任何影响。 此外,该面板的一个实例在其他地方使用没有任何问题。

我已经没有想法如何弄清楚出了什么问题。

我尝试使用此示例重现错误。它也显示为不可编辑但我完全不确定它是否连接。由于我在插件中有swt-dependencies,我需要使用swt / awt桥来运行示例:

public static void main(String[] args) {

final Display display = new Display();
final Shell shell = new Shell(display);
shell.setLayout(new FillLayout());
shell.setText("undo-edit-panel");

Composite myComp = new Composite(shell, SWT.EMBEDDED | SWT.NO_BACKGROUND);

java.awt.Frame fileTableFrame = SWT_AWT.new_Frame(myComp);
JPanel panel = new JPanel(new BorderLayout());
fileTableFrame.add(panel);


JEditorPane edit = new JEditorPane();
edit.setText("some text");
//Put the editor pane in a scroll pane.
JScrollPane editorScrollPane = new JScrollPane(edit);
editorScrollPane.setVerticalScrollBarPolicy(
        JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
editorScrollPane.setPreferredSize(new Dimension(250, 145));
editorScrollPane.setMinimumSize(new Dimension(10, 10));

panel.add(editorScrollPane, java.awt.BorderLayout.CENTER);

myComp.pack();

shell.open();
while (!shell.isDisposed()) {
    if (!display.readAndDispatch())
        display.sleep();
}
display.dispose();
}

0 个答案:

没有答案