如何在Glade中设置GtkLinkBut​​ton的标签?

时间:2017-08-30 00:03:50

标签: python-2.7 gtk3 glade msys2 gtkbuilder

我知道如何在Python或C中执行此操作,但我无法在Glade中执行此操作:

self.reclamaTaAiciLinkButton =\
    self.get_object("reclamaTaAiciLinkButton")
self.reclamaTaAiciLinkButton.set_label("RECLAMA TA AICI")

这是一张屏幕截图,其中包含Glade中GtkLinkBut​​ton类型的所有可用特定属性:

Glade properties editor panel screenshot

如果可以通过“动作名称”字段以某种方式使用,请举个例子。如果可以通过使用文本编辑器编辑Glade .ui文件,那就更好了。

1 个答案:

答案 0 :(得分:1)

我在Glade项目的官方问题跟踪器中找到了this pretty old bug,这完全与此有关。

在使用文本编辑器打开的.ui文件中,您可能有一个与此类似的片段,其中声明并定义了GtkLinkBut​​ton:

<object class="GtkLinkButton" id="reclamaTaAiciLinkButton">
    <property name="label" translatable="yes">button</property>
    <property name="visible">True</property>
    <property name="can_focus">True</property>
    <property name="receives_default">True</property>
    <property name="relief">none</property>
    <property name="uri">https://www.patreon.com/SilviuBogan</property>
    <style>
        <class name="reclamaTaAiciLinkButton"/>
    </style>
</object>

重要的是这个:

<property name="label" translatable="yes">button</property>

如果您关闭Glade中的.ui文件,请在文本编辑器(最好是XML文件编辑器)中打开.ui文件,然后将此<property>元素的内容从“button”替换为其他内容,然后你保存文件并在Glade中重新打开它,你会发现在Glade设计器中,新标签是可见的。如果启动加载此.ui文件的程序,您将看到更改正在运行。