2012-04-16 46 views
1

运行的代码我有一个相当长的perltk代码在我的手,我想运行一个批处理模式模拟(不使用GUI)。例如我想用像“myprog.pl -b”这样的脚本来运行它,而不是设置GUI中的所有参数,然后单击按钮。如何在没有图形用户界面

我当前方法“之后”使用用于配置和分离的XML文件中的函数,这意味着GUI将弹出和一段时间后开始模拟然后退出。它现在正在工作,但我有一个问题:有没有更好的方法来解决这个问题?是否有可能在后台显示GUI(所以我们不会看到它)而不是弹出?

+0

你可以尝试'WM退出.'你启动后取消映射的主窗口。通常,Tk应用程序撤回窗口以构建UI,然后“提升”以恢复其查看。更好但更复杂的是移动内核并打开'package provide Tk'或者一些no-gui命令行选项。 – patthoyts 2012-04-16 10:07:16

回答

3
  • 更改程序,使其可从图形界面和命令行界面进行访问。将其实际功能分解为子例程。
  • xvfb运行该程序,以便在主显示器上显示没有窗户。
  • 配置窗口管理器总是启动该程序最小化和/或与为0x0大小的实例。
+0

daxim,非常感谢您的提示。我喜欢这三个选项中的第三个。但不知何故,我所尝试的不是按预期工作。请问你或任何人请摆脱灯光?我已经试过1)“$ mw-> configure(-width => 0,-height => 0); $ mw-> resizable(0,0);” 。 2)“$ mw-> maxsize(0,0); $ mw-> resizable(0,0); 1)和2)都生成一个非常小的主窗口而不是0 * 0。 :我如何与xvfb的Perl的TK实施方案B – complexplasma 2012-04-16 11:20:38

+0

小主窗口,我得到足够小,不过,我想我可以住在一起,请只是帮助在xvfb的实现方法 – complexplasma 2012-04-16 11:37:26

+0

@complex:。事实上,选项1是最好的选择2:选项2相对容易; xvfb是一个外部程序 - 它是一个无显示的X服务器 - 所以只需稍微调整就可以设置选项3,非常糟糕;真正讨厌。 – 2012-04-19 09:59:19