0

我希望通过扩展 Java swing - JComponent 类来创建一个文本编辑组件。

应该为该组件设置的 UI 外观和感觉应该是什么?

我试过这个:

public void updateUI(){
     setUI((TextUI)UIManager.getUI(this));
      invalidate();
}

但是,这会引发异常:

UIDefaults.getUI() failed: no ComponentUI class for: com.gatech.ui.courier.TextComponent

TextComponent.java 是我扩展 JComponent 的类。

我错过了什么?有没有其他方法可以创建自己的文本编辑组件?

4

1 回答 1

0

尝试插入方法

public String getUIClassID() {
    return "TextPaneUI";
}

在您的 TextComponent 中。因此,您可以从 JTextPane 获取 UI。我认为 JComponent 没有 UI(如果有的话 - 它不是 TextUI)。但是如果您创建自己的组件 - 您可能需要创建自定义 UI。

于 2013-01-18T14:17:09.020 回答