【问题标题】:Is it possible to theme GUI applications with custom Python window manager?是否可以使用自定义 Python 窗口管理器为 GUI 应用程序设置主题?
【发布时间】:2014-01-28 07:58:08
【问题描述】:

我正在尝试使用 xlib(基于 Whimsy 和 PLWM)在 Python 中创建一个简单的自定义窗口管理器。

是否可以为 GUI 应用程序的默认外观设置皮肤,例如默认滚动条或按钮,仅使用 xlib?还是需要为每个应用程序单独完成?还是完全是另外一回事?

谢谢

【问题讨论】:

    标签: python linux xlib xserver window-managers


    【解决方案1】:

    不,xlib 没有滚动条或按钮的概念。最高级别的对象是窗口/可绘制对象 - 您可以侦听事件并在窗口顶部绘制。其他一切都在用户代码中的核心 X 协议之上实现

    【讨论】:

    • 桌面环境是如何实现GUI主题的?通过在顶部绘制?
    • 他们通过重用常见的主题库来实现 - 例如 QT/gtk 主题插件(通常直接使用 QT/gtk,但有时作为它们之上的一层,例如 en.wikipedia.org/wiki/GTK-Qt )
    【解决方案2】:

    默认行为来自 Windows 管理器,它规定了所有默认小部件的外观和颜色,因为某些 GUI 库调用它们。这些是在 Windows 管理器的代码或 XML 配置文件中预先定义的。查看 Whimsy 的源代码。

    您可以在自己的应用程序中自定义许多东西的外观,但不会影响其余的滚动条。

    您还必须考虑 X-server 的一些默认行为。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-08
      • 1970-01-01
      • 1970-01-01
      • 2020-05-05
      相关资源
      最近更新 更多