我有一个字符串,它是我写入文件的 JInternalFrame.toString() ,现在我需要一种方法将其作为 JInternalFrame 加载回来。数据字符串看起来像
javax.swing.JInternalFrame[,0,0,500x400,无效,隐藏,layout=javax.swing.plaf.basic.BasicInternalFrameUI$Handler,alignmentX=0.0,alignmentY=0.0,border=com.apple。 laf.AquaInternalFrameUI$CompoundUIBorder@2e00e753,flags=16777216,maximumSize=,minimumSize=java.awt.Dimension[宽度=150,高度=65],preferredSize=,closeable=true,defaultCloseOperation=DISPOSE_ON_CLOSE,desktopIcon=javax.swing.JInternalFrame $JDesktopIcon[,0,0,64x64,无效,隐藏,layout=java.awt.BorderLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=],frameIcon=, iconable = false,isClosed = false,isIcon = false,isMaximum = false,isSelected = false,maximizing = true,opened = false,可调整大小= true,rootPane = javax.swing.JRootPane[,0,0,0x0,无效,布局=javax.swing.JRootPane$RootLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=449,maximumSize=,minimumSize=,preferredSize=],rootPaneCheckingEnabled=true,title=测试应用]
我知道字符串不能转换为 JInternalFrame,但必须有某种方法来转换它。我该怎么做?
最佳答案
我不会尝试序列化JInternalFrame
。为什么?来自 Javadoc for JInternalFrame
:
Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeansTM has been added to the java.beans package. Please see XMLEncoder.
我会听取警告并考虑在您的程序中实现 XMLEncoder
。
关于java - 将字符串转换为 JInternalFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15754267/