如何在Windows中从命令行使用它时停止gnuplot窗口弹出?

时间:2011-03-17 05:24:18

标签: windows perl command-line gnuplot

我使用perl打开管道到pgnuplot.exe输出绘图命令。例如,

open ($PLOT, "|pgnuplot") or die "error: gnuplot not found!";

print $PLOT <<EOPLOT;

set term postscript eps enhanced "Arial" 20
set output "somefile.eps"

## do some plotting here ##

EOPLOT

close $PLOT;

我注意到gnuplot的窗口总是会弹出并暂时抓住鼠标和键盘的焦点。这使得在绘图脚本运行时很难使用计算机。

有没有办法阻止pgnuplot打开一个窗口?

2 个答案:

答案 0 :(得分:0)

是的,在Windows(CreateProcess API)中启动程序时,可以请求隐藏或最小化主窗口而不关注焦点(以及其他选项)。但我不知道perl是否提供了一种简单的方法。

您可以考虑使用batch operation(将绘图命令放在文件中,然后将文件名传递给gnuplot)。

答案 1 :(得分:0)

您可以通过Win32模块阻止显示子控制台窗口:

use Win32;
Win32::SetChildShowWindow(0);