代码之家  ›  专栏  ›  技术社区  ›  dsimcha

GTK:如何忽略“无法打开显示”错误?

  •  1
  • dsimcha  · 技术社区  · 14 年前

    当我打电话的时候主.init(),我收到一个Gtk警告**:无法按预期打开显示。当我打电话的时候主.initCheck()而不是忽略错误,我只是在以后的执行中得到更多与缺少屏幕有关的错误。

    有什么简单的方法可以让我的程序忽略没有可用屏幕的事实,把所有屏幕上的图形都绘制到某个虚拟设备上(相当于/dev/null的图形),然后仍然绘制到Pixmaps和Pixbufs(将绘图保存到文件所必需的)并运行应用程序的非GUI部分吗?

    编辑:如果应用程序启动了一个窗口并阻塞了一个事件循环,理想的做法是立即关闭窗口(或者一开始就无法成功打开),然后继续运行程序中非基于GUI的部分。如果这是不可能的,我可以通过确保我不启动任何窗口来解决它。

    2 回复  |  直到 14 年前
        1
  •  1
  •   ptomato    14 年前

    我相信最简单的解决办法就是只使用 GdkPixbuf 是为了处理你的阴谋;据我所知 gdk-pixbuf

    你也可以用 GtkOffscreenWindow 但这只在GTK2.20之后才可用,据我所知,D绑定最多只能覆盖2.18。

    或者,您可以在SSH会话中使用X转发;使用 -X -Y 在SSH命令行上。有关更多信息,请参阅SSH手册。如果在SSH所在的机器上运行X服务器,那么绘图可以显示在本地机器的屏幕上。

        2
  •  0
  •   el.pescado - нет войне    14 年前

    如果需要Pixmaps但不想使用图形,则有两种选择:

    1. -X 旗帜。在这种情况下,您的应用程序将能够使用本地X服务器。
    2. 使用Xvfb——这是一个完全不输出的虚拟X服务器,所有图形都存储在内存中。