我正在使用 Java Swing 开发 Twitter feed 应用程序。
我是否可以为 JEditorPane 设置自定义属性,如下所示
JEditorPane jep = new JEditorPane();
jep.tweetID = "222";
jep.tweetText = "Good Day...";
这样我就可以直接在与此 JEditorPane 关联的事件中获取这些属性,如下所示
public void mouseReleased(MouseEvent e)
{
String currentTweetID = e.getSource().tweetID;
}
如果可行,请提出解决方案。
Swing 组件所基于的每个 AWT 组件都有一个
setName
方法和一个 getName
方法。您可以使用任何字符串命名您的组件,例如您的 tweetID
。如果您需要其他标识字符串,您可以将它们连接在一起并使用 setName
方法将它们传递给您的操作方法。
您可以使用
JEditorPane
方法获取 getText
的文本。
JComponent
的所有实例都提供对可通过putClientProperty()
和getClientProperty()
访问的组件特定属性的支持。常见用例包括布局约束和 GUI 提示,例如 sizeVariant
,参见 here。
备注:
API 警告“
clientProperty
字典并非旨在支持大规模扩展”,并且可能需要单独的 view_model。
现有密钥的记录可能很差,可能是埋藏在源代码中或短暂的、特定于供应商的功能。