在JAVA SWT 应用程序中自身重启应用

在我们编写SWT程序的时候,有时候在程序内部进行了某些设置以后,或者对启动文件中的配置进行了一些修改以后,需要应用程序重新启动一下,怎么做呢?下面我们就来看看怎么做这个。

1、新建个SWT项

2、新建个SWT窗

3、试运行


4、能出现下面这个窗口,说明SWT项目兴建成功。

5、添加按钮:

6、为按钮添加以下事件处理:

/**
     * Create contents of the window.
     */
    protected void createContents() {
        shell = new Shell();
        shell.setSize(450, 300);
        shell.setText("SWT Application");
        
        Button button = new Button(shell, SWT.NONE);
       button.addSelectionListener(reset);
        button.setBounds(22, 33, 72, 22);
        button.setText("\u91CD\u65B0\u542F\u52A8");

    }

/**重启*/
    private SelectionListener reset=new SelectionListener() {
        
        @Override
        public void widgetSelected(SelectionEvent arg0) {
            
            ProcessBuilder pb=new ProcessBuilder("java","-jar","newApp.jar");
            try {
                Process p=pb.start();
                System.exit(0);
            } catch (IOException e) {
               
                e.printStackTrace();
                JOptionPane.showMessageDialog(null, e.getMessage(),"提示", JOptionPane.INFORMATION_MESSAGE);
            }
        }
        
        @Override
        public void widgetDefaultSelected(SelectionEvent arg0) {
            
            
        }
    };


其中,newApp.jar是应用发布成为可运行jar包的文件名。

7、进行完上面的步骤后,如果在调试模式下运行,会发现窗口消失了。还没完呢,还需要将整个应用发布后才能行。
     先新建个文件夹,将本项目输出成为可运行jar文件,如图:


8、选定应用程序运行入口窗口以及jar存放地址:




9、jar文件生成了,但是在winXP下点击没反应。我们还需要建两个辅助文件:先加个javastart.bat文件:
@echo off
java -jar newApp.jar


10、bat文件执行时候会出现窗口,这是我不愿意看到的,我决定把它弄没了,所以加了newApp.vbe文件:
set ws=wscript.createobject("wscript.shell")
ws.run "javastart.bat /start",0


11、ok,点击newApp.vbe,测试可行性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阳光正好2024

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值