【发布时间】:2018-01-13 18:33:53
【问题描述】:
我想在我正在编写的另一个程序中运行一个程序(在本例中为记事本)。我希望记事本被限制在我可以定义的程序内的一个框内,比如 500 x 500。然后我可以在其中添加我的普通窗口组件,如文本和按钮。我尝试了 Runtime#exec();如下图:
private Main() {
setSize(1920, 1080);
setMinimumSize(new Dimension(1080, 720));
setResizable(true);
setLayout(new FlowLayout());
setDefaultCloseOperation(EXIT_ON_CLOSE);
try {
Runtime runTime = Runtime.getRuntime();
Process process = runTime.exec("notepad");
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
process.destroy();
} catch (IOException e) {
e.printStackTrace();
}
}
我可以完美地启动记事本,但如果可能的话,我不确定如何将运行时添加到我的程序中(例如如何添加按钮)。有没有办法做到这一点?
【问题讨论】:
-
我不知道如何将运行时添加到我的程序中你能具体点吗??
-
确实很难对另一个程序施加约束并使其服从您的意愿。记事本有自己的想法。它不会想要配合你的限制。可以,但这可能是XY problem?你真正想做什么?可能有更好的方法。
-
即使你能做到这一点,这很困难,你也会被历史上每个防病毒程序标记为戳戳和刺激其他软件的内存。
-
Java 没有直接的方法来控制记事本。只需直接在您的 Java 应用程序中构建一个简单的文本编辑器即可。
标签: java runtime.exec