【问题标题】:Is there a way to add a property to a GTK widget/object to store additional information about it有没有办法将属性添加到 GTK 小部件/对象以存储有关它的附加信息
【发布时间】:2018-12-29 19:17:06
【问题描述】:

我的项目中有许多 GTK 小部件/GObject。我希望能够在创建每个对象时将一些信息附加到每个对象,然后当对象被传递给某个通用库例程时,能够检索此小部件/GObject 特定信息以进行处理

我查看了 GObject 手册,并认为我可以使用其中一些例程。但是每次我检查一些东西时,我都必须追踪需要进一步研究的多个定义。我搞不清楚了。我一直在寻找一些简单的例子,可以把这一切都放在眼里。

我希望能够输入类似(FreeBasic 中的代码示例)

dim as GtkWidget Ptr widget = gtk_button_new("Press Me")

然后添加类似这样的一行

add_property(widget,"username","Andrew Loy",-1)

然后在一些通用库错误报告例程中,小部件存储在一些通用堆中。

Sub ReportError(widget as GtkWidget Ptr)
dim as Zstring ptr     NameOfUser

    get_property(widget,"username",@NameOfUser,-1)
    print *NameOfUser

我希望小部件/GObject 携带比标准 GTK 提供的更多信息。一个简单的指针就足够了。

【问题讨论】:

    标签: widget gtk3


    【解决方案1】:

    查看g_object_set_data(),它允许您使用字符串键将任何指针与 GObject 相关联。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-19
      • 1970-01-01
      • 2021-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多