【问题标题】:Set spacing of Gtk3 HeaderBar in Python?在 Python 中设置 Gtk3 HeaderBar 的间距?
【发布时间】:2017-11-12 13:20:51
【问题描述】:

根据官方文档(https://developer.gnome.org/gtk3/stable/GtkHeaderBar.html),GtkHeaderBar 有一个间距属性。

要更改 python 中的 subtitle 和 title 属性,您可以使用

headerbar.set_title()
headerbar.set_subtitle()

因此应该遵循spacing() 也将遵循相同的规则,但是我被告知以下错误

AttributeError: 'HeaderBar' object has no attribute 'set_spacing'

这是什么原因?我找不到任何具体的例子,文档是唯一涵盖其使用的地方,据它说spacing显然是GtkHeaderBar的属性

感谢您在这里提供的任何帮助

【问题讨论】:

标签: python python-3.x gtk gtk3 gnome


【解决方案1】:

直接设置GObject属性,每个对象都有一个props属性:

headerbar.props.spacing = 5
headerbar.props.subtitle = 'Habits of the Algorithmic Mind'

我相信这样当您输入错误的属性名称时,它不会静默失败(例如headerbar.spaing = 5)。尽管 GObject 的其他语言绑定(例如 JS 和 Ruby)将 GObject 属性视为对象的属性。

【讨论】:

    【解决方案2】:

    属性与属性不同。 您可以使用以下方式设置属性:

    your_bar.set_property("spacing", 5)
    

    或者,您可以在实例化对象时定义间距:

    your_bar = Gtk.HeaderBar(spacing = 5)
    

    (我更喜欢后者——你可以在一个语句中设置一堆属性)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-24
      • 1970-01-01
      • 2020-04-16
      相关资源
      最近更新 更多