Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/157.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在GTK+;中检查小部件的类型;3.0?_C++_Gtk_Gtk3 - Fatal编程技术网

C++ 如何在GTK+;中检查小部件的类型;3.0?

C++ 如何在GTK+;中检查小部件的类型;3.0?,c++,gtk,gtk3,C++,Gtk,Gtk3,我看到了这篇文章,但它是针对Python的,所以这对我帮助不大。我在C++编程,在一个我没有编写的代码库上工作。我看到一些检查,如GTK\u IS\u ENTRY和GTK\u IS\u COMBO\u BOX,但我不确定此人在哪里找到这些或其他GTK\u是什么…。在什么地方提到过这些吗?我在网上搜索,也在Gtk/GLib网站上搜索,但什么也没找到。谢谢 类型检查宏通常是GObject的API契约的一部分,它们确实是,因此不会出现在文档中。他们所做的就是调用给定的GType宏,比如GTK_TYPE

我看到了这篇文章,但它是针对Python的,所以这对我帮助不大。我在C++编程,在一个我没有编写的代码库上工作。我看到一些检查,如
GTK\u IS\u ENTRY
GTK\u IS\u COMBO\u BOX
,但我不确定此人在哪里找到这些或其他
GTK\u是什么…
。在什么地方提到过这些吗?我在网上搜索,也在Gtk/GLib网站上搜索,但什么也没找到。谢谢

类型检查宏通常是GObject的API契约的一部分,它们确实是,因此不会出现在文档中。他们所做的就是调用给定的GType宏,比如
GTK_TYPE_ENTRY
GTK_TYPE_COMBO_BOX

,这肯定会给它带来一些启发,但我仍然不确定如何使用它。如果我想检查某个东西是否是组合框,我可以执行
GTK\u TYPE\u组合框(GtkWidget*widget)
?假设
GTK\u类型是最安全的吗其中(…)是我要检查的类型?抱歉,am noob:p
GTK_TYPE_组合框
是提供类型的宏;它不接受参数。如果要检查小部件指针的类型是否为
GtkComboBox
,则必须使用
GTK\u is\u组合框(小部件)