gpt4 book ai didi

gtk - 使用构建器内容构建 Vala Gtk 对象

转载 作者:行者123 更新时间:2023-12-04 18:45:22 24 4
gpt4 key购买 nike

能够创建一个使用构建器加载其内容的新小部件将是理想的,例如。

public class MyDialog : Dialog
{
public MyDialog
{
Gtk.Builder builder = new Gtk.Builder ();
builder.add_from_file ("dialog.ui");
this = builder.get_object ("my_dialog") as Gtk.Widget;
}
}

显然这行不通,因为 this =是无效的分配,但我想知道是否有办法使用从 builder 加载的内容来设置小部件的内容。

与此同时,我更换了 this = ...
var content = get_content_area ();
var dialog = builder.get_object ("my_dialog") as Gtk.Widget;
var _content = (dialog as Dialog).get_content_area ();
_content.reparent (content);

这确实有效,但对我来说能够直接加载仍然有意义。

谢谢。

最佳答案

万一有人在将来偶然发现这个问题,Vala 0.22 具有复合小部件模板,这是对上述问题的更简单的解决方案。复合模板允许您在 Glade 中定义一个小部件并使用属性告诉 Vala 您的类的哪些部分引用了小部件的哪些元素,并连接回调,而无需使用 Gtk.Builder完全手动。

详情请见 http://blogs.gnome.org/tvb/2013/05/29/composite-templates-lands-in-vala/

关于gtk - 使用构建器内容构建 Vala Gtk 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15233238/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com