将控制从应用程序带到java框架
我使用java程序在arduino板和临时文件之间进行通信。沟通进行得很好。我使用一个用户界面来启动通信,在这里我有一个按钮叫做 连接 关闭并最小化 当用户单击connect按钮时,代码将检查组合框中的值,并相应地打开临时文件 单击connect按钮后,控件将移动到scratch应用程序。在我完成工作后,当我试图关闭划痕时。我的scratch应用程序按预期关闭,但控件不会返回到用户界面,因为我无法关闭应用程序,我在NetBeans中强制关闭它。在输出屏幕中,我没有看到构建成功,而是看到构建停止。这是我的过程完美地工作,直到我给连接,但一旦按下按钮,它是挂起来的一些地方 我尝试将其作为一个jar文件,并在另一台机器上运行,当时我使用TaskManager中的EndTask关闭应用程序将控制从应用程序带到java框架,java,memory,process,kill,Java,Memory,Process,Kill,我使用java程序在arduino板和临时文件之间进行通信。沟通进行得很好。我使用一个用户界面来启动通信,在这里我有一个按钮叫做 连接 关闭并最小化 当用户单击connect按钮时,代码将检查组合框中的值,并相应地打开临时文件 单击connect按钮后,控件将移动到scratch应用程序。在我完成工作后,当我试图关闭划痕时。我的scratch应用程序按预期关闭,但控件不会返回到用户界面,因为我无法关闭应用程序,我在NetBeans中强制关闭它。在输出屏幕中,我没有看到构建成功,而是看到构建停止。
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
if("Disconnect".equals(jButton1.getText()))
{
System.exit(0);
}
if(jComboBox2.getSelectedItem()==null)
{
System.out.println("Select one port");
}
else
{
Runtime r = Runtime.getRuntime();
try {
//this.hide();
//p = r.exec("C:\\Program Files\\Scratch 2\\Scratch 2.exe C:\\Users\\Admin\\Desktop\\fwdbckpwm12.sb2");
p = Runtime.getRuntime().exec("C:\\Program Files\\Scratch 2\\Scratch 2.exe C:\\Users\\Admin\\Desktop\\scratch files new.sb2");
//Runtime.getRuntime().exec("taskkill /F /IM <p>.exe");
//p.destroy();
//r.exec("C:\\Windows\\notepad.exe C:\\Windows\\ss.txt");
//this.setDefaultCloseOperation(EXIT_ON_CLOSE);
A4S a4sObj = new A4S(new String[] {jComboBox2.getSelectedItem().toString()}); //defaultline
//A4S a4sObj = new A4S(new String[]{"COM16"}); //addedline
//r.gc();
//this.setDefaultCloseOperation(EXIT_ON_CLOSE);
} catch (IOException ex) {
Logger.getLogger(serialportselection.class.getName()).log(Level.SEVERE, null, ex);
}
finally{
//p.destroy();
//System.gc();
// }
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt){
if(“Disconnect”.equals(jButton1.getText()))
{
系统出口(0);
}
if(jcombox2.getSelectedItem()==null)
{
System.out.println(“选择一个端口”);
}
其他的
{
Runtime r=Runtime.getRuntime();
试一试{
//this.hide();
//p=r.exec(“C:\\Program Files\\Scratch 2\\Scratch 2.exe C:\\Users\\Admin\\Desktop\\fwdbckpwm12.sb2”);
p=Runtime.getRuntime().exec(“C:\\Program Files\\Scratch 2\\Scratch 2.exe C:\\Users\\Admin\\Desktop\\Scratch Files new.sb2”);
//Runtime.getRuntime().exec(“taskkill/F/IM.exe”);
//p、 破坏();
//r、 exec(“C:\\Windows\\notepad.exe C:\\Windows\\ss.txt”);
//此.setDefaultCloseOperation(关闭时退出);
A4S a4sObj=new A4S(新字符串[]{jCombox2.getSelectedItem().toString()});//defaultline
//A4S a4sObj=new A4S(新字符串[]{“COM16”});//addedline
//r、 gc();
//此.setDefaultCloseOperation(关闭时退出);
}捕获(IOEX异常){
Logger.getLogger(serialportselection.class.getName()).log(Level.SEVERE,null,ex);
}
最后{
//p、 破坏();
//gc();
// }
}
这是我试过的代码。但似乎没有一个能起作用。据我所知,您使用SWING创建UI。 你可以设置
yourFrame.setDefaultCloseOperation(EXIT_ON_CLOSE);
这一定会有帮助。据我所知,您使用SWING创建UI。 你可以设置
yourFrame.setDefaultCloseOperation(EXIT_ON_CLOSE);
为了你的身材。这一定有帮助
这并没有解决我的问题我后来甚至使用了这个代码,因为它似乎不起作用。这并没有解决我的问题我后来甚至使用了这个代码,因为它似乎不起作用。对不起,但我是新来的。你能解释我的代码部分吗对不起,我是新来的。你能解释我的代码部分吗