为什么在一个GTK 3 UI文件中有多个模板定义会导致错误?
我正在制作一个GTK3应用程序(使用Ruby),使用Glade制作接口。我制作了一个包含两个复合模板的UI文件,如下所示:为什么在一个GTK 3 UI文件中有多个模板定义会导致错误?,gtk,gtk3,glade,Gtk,Gtk3,Glade,我正在制作一个GTK3应用程序(使用Ruby),使用Glade制作接口。我制作了一个包含两个复合模板的UI文件,如下所示: <?xml version="1.0" encoding="UTF-8"?> <!-- Generated with glade 3.22.2 --> <interface> <requires lib="gtk+" version="3.20"/&
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.22.2 -->
<interface>
<requires lib="gtk+" version="3.20"/>
<template class="BillyBonesApplicationWindow" parent="GtkApplicationWindow">
<child>
<object class="GtkGrid">
<!-- More code here -->
</object>
</child>
</template>
<template class="BillyBonesPayDialog" parent="GtkDialog">
<property name="modal">True</property>
<property name="destroy_with_parent">True</property>
<property name="type_hint">dialog</property>
<signal name="response" handler="gtk_widget_destroy" after="yes" swapped="yes"/>
<child type="titlebar">
<placeholder/>
</child>
<child internal-child="vbox">
<object class="GtkBox">
<!-- More code here -->
</object>
</child>
<action-widgets>
<action-widget response="-10">savebutton</action-widget>
<action-widget response="-6">cancelbutton</action-widget>
</action-widgets>
</template>
</interface>
真的
真的
对话
保存按钮
取消按钮
但当我尝试运行我的应用程序时,出现了一个错误:
Gtk CRITICAL**:00:43:15.062:为类型为“BillyBonesApplicationWindow”的实例生成模板类“BillyBonesApplicationWindow”时出错:3:2485已解析类型为“BillyBonesPayDialog”的模板定义,预期类型为“BillyBonesApplicationWindow”
当我将两个接口定义拆分为单独的文件时,错误消失了
在GTK3中,每个UI文件只能有一个复合模板定义吗