c / gtk将结构转换为GtkWindow的类型

时间:2010-06-15 09:23:01

标签: c gtk

我有以下结构,

    typedef struct _MainWin
    {
        GtkWindow parent;
        GtkWidget* scroll;
        GtkWidget* box;
    }MainWin;

我已从此结构创建了应用程序主窗口。现在我需要全屏主窗口。当我试着打电话时,

gtk_window_fullscree(GTK_WINDOW(mw);

其中mwMainWin的对象。我收到以下错误消息gtk_window_fullscreen: assertion GTK_IS_WINDOW(窗口)'失败'

如何将mw引导至GtkWindow

谢谢。

2 个答案:

答案 0 :(得分:1)

他们在您发布的Viewnior代码中所做的是创建GtkWindow的子类。您已复制部分代码以正确执行此操作,但不是全部。您应该阅读GObject文档的教程部分,了解如何定义新类。您可以在线找到它here

答案 1 :(得分:0)

这似乎不对。您的GtkWindow也应该是一个指针,并使用gtk_window_new()创建,就像任何其他GTK +小部件一样。这看起来像你试图“子类化”GtkWindow结构,我认为你不能这样做。