在Java应用程序中创建新文档

时间:2015-01-19 07:29:02

标签: java document

我正在开发一个允许用户创建文档的java应用程序。该程序工作正常,但是当用户单击运行程序时开始出现的框架上的关闭按钮时,它正在关闭所有文档。

我想要的行为类似于MS Word。当您打开新的Word文档1时,您还可以打开新的文档2,3,4等。当用户关闭文档1时,其他文档也不会关闭。但是,在我关闭文档1的应用程序中,所有后续文档都将关闭。

我理解这是因为在我的应用程序中关闭文档1将导致main(String [] args)方法的终止。

以下是用户单击“新建文档”按钮时执行的代码。

    public void actionPerformed(ActionEvent e) {
    if(count==0){
    if(e.getSource().equals(QuotPane.this.newFile)){
       tablePane=new JTabbedPane();//I have tried to add tabs to the pane but it was overriding the old document
       QuotPane.this.createTablePane();
       tablePane.addTab("New Qout", tablePanel);
       frame.add(tablePane,BorderLayout.CENTER);
        count ++;
        }
    }else if(count>0)
    {
    new QuotPane();//creatint a new document here
    }}

如何使其在MS Word中完成工作?

2 个答案:

答案 0 :(得分:1)

在我看来,在java中执行'mutliple document interface'(mdi)的最好方法是使用JDesktopPane。 Oracle将此称为“内部框架”。它是为此目的而设计的 网络上有很多文档(见这里:http://docs.oracle.com/javase/tutorial/uiswing/components/internalframe.html)。

如果您想查看正在运行的程序,可以在github上查看我的项目'xenia':https://github.com/gcchris67/Xenia

答案 1 :(得分:-2)

如果要保持其他文档处于打开状态,可以尝试为每个文档创建一个新的线程 - 然后让main()方法等待所有线程在结束之前终止。