【问题标题】:Gtk+2.0, How can i remove an attached widget to a GtkTable?Gtk+2.0,如何将附加的小部件删除到 GtkTable?
【发布时间】:2016-11-23 13:36:49
【问题描述】:

这是我在Stack Overflow上的第一个问题,所以如果我犯了一些错误,希望你能友好。

我正在尝试学习一点 Gtk2.0 机制。我是这个库的新手,所以我正在尝试构建一个基本的 GUI。

我创建了一个 230x150 的窗口,附加了一个 GdkPixbuf 图标并学习了如何触发信号,特别是我对在按下箭头键时显示/隐藏图标感兴趣。

我已经实现了显示图标的目标,但我没有找到隐藏这个图标的方法。我查看了文档,但似乎一切正常。

我附上下面的代码,以便您更好地帮助我。提前感谢您的提示。

http://pastebin.com/iUJRc6hw

【问题讨论】:

  • 顺便说一句,如果您只是学习 GTK,那么从 GTK 3 开始吧! GTK 2 现在已经过时了,GTK 3 很快就会变成 GTK 4...

标签: c user-interface gtk gtk2


【解决方案1】:

您应该可以使用gtk_widget_hide(app->icon) 隐藏图标。

【讨论】:

  • 首先感谢您的回答,但它仍然无法正常工作。我使用了您建议的函数,但该函数有一个 GtkWidget 作为参数,而 app->icon 是一个 GtkPixBuf 所以我使用了 gtk_widget_hide(gtk_image_new_from_pixbuf(app->icon));但是当 gtk_widget_hide 被触发时没有任何反应。
  • 好吧,如果你用gtk_image_new_from_pixbuf() 创建一个新的小部件并隐藏那个,那么它就不会隐藏现有的图像。您需要在 app 结构中保存指向现有 GtkImage 的指针并隐藏它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-10
  • 1970-01-01
相关资源
最近更新 更多