“ GtkWidget {aka struct _GtkWidget}”没有名为“ window”的成员

时间:2019-03-11 15:53:30

标签: gtk3

我最近尝试使用安德鲁·克劳斯(Andrew Krause)的“ GTK +开发基础”(这是我最近发现的有关GTK的书)来学习GTK。到目前为止,大约有一半的程序可以完全编译和运行,而另一半则具有不推荐使用的功能,我可以通过稍加搜索就可以找到替代的功能。我确实使用了一些在线教程,但是其中没有Krause先生的书所包含的解释的详细信息。

在一个完美的世界中,我想学习一本最新的书,但是没有。因此,我必须在这本书(GTK2)和在线资源(GTK3)之间来回走动。

我的问题是,当我尝试从本书中编译源代码时,遇到了一些错误。我已经能够更新所有代码,除了我无法克服的标题中提到的问题之外。

从这本书的第3章事件框中,这行是我遇到的问题:

gdk_window_set_cursor (eventbox->window, gdk_cursor_new (GDK_HAND1));

我已经可以对其进行修改以工作到这一点,但是在编译时仍然会收到错误消息:

gdk_window_set_cursor (eventbox->window, gdk_cursor_new_for_display   (gdk_display_get_default(), GDK_HAND1));

我编译时得到:

eventboxes.c:37:33: error: ‘GtkWidget {aka struct _GtkWidget}’ has no member named ‘window’


gdk_window_set_cursor (eventbox->window, gdk_cursor_new_for_display (gdk_display_get_default(), GDK_HAND1));

已经在线阅读了一些其他项目,例如“ using cairo with gtk3

我发现GTK2和GTK3之间的更改使成员(例如window)无法访问。

很抱歉,我的问题发表时间长了: GTK3中是否有办法使代码行正常工作,或者我只是在追赶一个傻子,应该让这个人死掉?

0 个答案:

没有答案