如何以不同的forms访问jtextPane?

我正在开发一个应用程序,当我从列表中选择一个值(文件)时,它应该在另一个表单的jTextPane中打开。 我正在使用两个面板,一个是mainpanel,我的列表显示,一个是ExcelSheet,当我点击一个列表值然后mainpanel关闭,显示新表单ExcelSheet但不显示jTextPane中doc文件的内容。

XWPFWordExtractor extractor=null; File file=null; String str=(String) list.getSelectedValue(); mainPanel.setVisible(false); new ExcelSheet().setVisible(true); ExcelSheet obj=new ExcelSheet(); try { file=new File("C:\\Users\\Siddique Ansari\\Documents\\CV Parser\\"+str); FileInputStream fis=new FileInputStream(file.getAbsolutePath()); XWPFDocument document=new XWPFDocument(fis); extractor = new XWPFWordExtractor(document); String fileData = extractor.getText(); Document doc = obj.jTextPane1.getDocument(); System.out.println(fileData); doc.insertString(doc.getLength(), fileData, null); } catch(Exception exep){exep.printStackTrace();} 

使用Action封装更新文本窗格的代码以显示给定文件。 您可以从添加到JListListSelectionListener调用操作。 您还可以在菜单项或工具栏按钮中使用该操作,如此处所示。 ImageApp是一个相关的例子。

例如,您的操作的每个实例都需要目标文本窗格和文件:

 class FileAction extends AbstractAction { JTextPane target; File file; public FileAction(JTextPane target, File file) { this.target = target; this.file = file; } @Override public void actionPerformed(ActionEvent e) { // render file in target } }