我有以下结构,
typedef struct _MainWin
{
GtkWindow parent;
GtkWidget* scroll;
GtkWidget* box;
}MainWin;
我已从此结构创建了应用程序主窗口。现在我需要全屏主窗口。当我试着打电话时,
gtk_window_fullscree(GTK_WINDOW(mw);
其中mw
是MainWin
的对象。我收到以下错误消息gtk_window_fullscreen: assertion
GTK_IS_WINDOW(窗口)'失败'
如何将mw
引导至GtkWindow
?
谢谢。
答案 0 :(得分:1)
他们在您发布的Viewnior代码中所做的是创建GtkWindow
的子类。您已复制部分代码以正确执行此操作,但不是全部。您应该阅读GObject文档的教程部分,了解如何定义新类。您可以在线找到它here。
答案 1 :(得分:0)
这似乎不对。您的GtkWindow也应该是一个指针,并使用gtk_window_new()
创建,就像任何其他GTK +小部件一样。这看起来像你试图“子类化”GtkWindow结构,我认为你不能这样做。