如何获取GtkWidget显示与隐藏状态?

时哲 2009-03-20 05:21:26
大家好,我使用gtk_widget_show()和gtk_widget_hide()函数将某一GtkWidget对象显示和隐藏后,有什么方法能够获得它的属性?我问题有如下几条:
(1)visible属性是否是GtkWidget对象显示和隐藏的属性,如何访问?
(2)什么函数可以返回GtkWidget对象显示和隐藏的属性?

感谢!
...全文
304 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
windwhinny 2009-03-22
  • 打赏
  • 举报
回复
GTK_WIDGET_VISIBLE()

#define GTK_WIDGET_VISIBLE(wid) ((GTK_WIDGET_FLAGS (wid) & GTK_VISIBLE) != 0)
Evaluates to TRUE if the widget is visible.

wid :
a GtkWidget.
时哲 2009-03-20
  • 打赏
  • 举报
回复
今天周末都去玩去了吧。目前自己解决了该问题,分享一下经验:
g_object_get(widget, "wisible", &value, NULL);


不知道是否有更好的方法?


总感觉很多问题真正要理解,必须去深入了解GObject。所以,想向高人再请教几个问题?
(1)GTK+ Reference Manual里的GtkWidget条目中,Synopsis部分,有如下定义:

void (*GtkCallback) (GtkWidget *widget,
gpointer data);
GtkRequisition;
struct GtkAllocation;
GtkSelectionData;
GtkWidgetAuxInfo;
GtkWidgetShapeInfo;

请问,第一条有关回调函数的定义是否符合C语言的语法?为什么只有第三条标明为结构体,而其它结构体不标明?这些结构体属于GtkWidget类的成员吗?

(2)我很难在参考资料里找到关于GtkWidget对象成员的介绍,例如我知道用window->allocate获得窗体大小。但我如何知道它还有哪些成员?
时哲 2009-03-20
  • 打赏
  • 举报
回复
大哥,这差得好远。完全不是一个概念啊。我就是没有找到和这类似的函数,才来问高人。
  • 打赏
  • 举报
回复
QT下是这2种方法:
isVisible()
isHidden ()
GtkWidget应该也类似吧

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧