`
rubynroll
  • 浏览: 204562 次
  • 性别: Icon_minigender_1
  • 来自: Wgt
社区版块
存档分类
最新评论

Ruby/GTK应用笔记(1): Gtk::Toolbar

阅读更多
由于Gtk的Toolbar内部接口发生了一些变化,在使用Gtk::Toolbar#append时可能会发生问题。

当你在一个Gtk::Toolbar里面混合用:
Gtk::Toolbar#append(stock_id)

与:
Gtk::Toolbar#append(widget)

那么就会得到:
引用
Gtk-WARNING **: mixing deprecated and non-deprecated GtkToolbar API is not allowed

这样的警告。这种警告不可忽视,因为以后会由警告变成错误。

这个问题在RubyGnome的网站上并没有提及,而且要注意的是,RubyGnome网站上的API参考中,有不少已经是被废弃了的接口还依然列在那里。google那条警告信息可以看到很多人都碰到过这个问题,包括Gtk的Python binding也同样受到影响。但对于怎么解决这个问题并没有非常清晰的解答。

经过摸索,以及参考Python/GTK的文档,得到正确的做法是:在同一个Gtk::Toolbar里面,只能都用Gtk::Toolbar#append(stock_id),或者都用Gtk::Toolbar#append(widget),碰到需要混用的场合,例如需要加入Gtk::ToggleToolButton,那么就应该统一用Gtk::Toolbar#insert,这样就可以解决警告信息的问题。

分享到:
评论

相关推荐

    基于C gtk/gtk+ sqlite3选课系统的开发

    在本文中,我们将深入探讨如何使用C语言,结合GTK+/GTK+图形库和SQLite3数据库来开发一个选课系统。这个项目将展示如何利用这些技术创建一个用户友好的图形界面,以及如何处理和存储数据。 首先,让我们了解C语言。...

    Ruby-GNOME2.zip

    跟其它界面开发包不同的是,Ruby-GNOME2不仅仅提 供界面控件,它提供了整个GNOME 2.0的环境,包含Ruby/GLib2、Ruby/ATK、Ruby/Pango、Ruby/GTK2、Ruby/GnomeCanvas2、Ruby /GNOME2、Ruby/GnomeVFS、Ruby/GtkHtml2、...

    Centos搭建GTK+Codeblock完整版

    1. 安装基础库:libpng和tiff是图像处理库,它们为GTK+提供了支持。使用以下命令安装: ``` sudo yum install libpng-devel tiff-devel ``` 2. 安装GLib:GLib是GTK+的核心库,提供基础数据类型、线程支持、内存...

    gtk开发环境搭建

    gcc gtka.c -o a.exe -mms-bitfields -I/D:/gtk/include/gtk-2.0 -I/D:/gtk/lib/gtk-2.0/include -I/D:/gtk/include/atk-1.0 -I/D:/gtk/include/cairo -I/D:/gtk/include/gdk-pixbuf-2.0 -I/D:/gtk/include/pango-...

    输入法环境变量XMODIFIERS/GTK_IM_MODULE

    一般情况下,XMODIFIERS的优先级高于GTK_IM_MODULE,即当我们同时设定这两个环境变量时,在GTK+2的应用程序里优先使用的是XMODIFIERS指定的X输入法。 那么,GTK immodule相比XIM有什么优点呢?首先,GTK immodule不...

    GTK+GNOME程序设计PDF(高清)2

    本书详细介绍了两种Linux图形用户界面开发技术:GTK+/GNOME。主要内容包括:GUI的基本概念,GLib,GTK+及GNOME的简介,各种GUI元素的创建与使用,bIDE,Glade等等。最后通过两个综合实例来巩固所学知识。本书实例...

    gtk-3.24.zip(添加放置路径说明文件)

    标题中的"gtk-3.24.zip"是一个包含GTK+ 3.24版本库的压缩文件,GTK+(GIMP Toolkit)是一个用于创建图形用户界面的开源工具包,广泛应用于Linux和其他Unix-like操作系统,同时也支持Windows和macOS。这个压缩包显然...

    gtk:https的只读镜像

    官方下载位置 官方网站 官方开发者博客 讨论区 每晚的文档可以在以下位置找到Gtk: : Gdk: ://gnome.pages.gitlab.gnome.org/gtk/gdk/ Gsk: ://gnome.pages.gitlab.gnome.org/gtk/gsk/建造和安装为了构建GTK,...

    eclipse-cpp-2023-06-R-linux-gtk-x86-64.tar.gz

    《Eclipse C++ IDE在Linux x86_64环境中的深度解析与应用》 Eclipse作为一款全球知名的开源集成开发环境(IDE),被广泛应用于各种编程语言的开发,尤其在C++领域,Eclipse CDT(C/C++ Development Tools)提供了...

    Gtk设置透明按键以及设置背景图

    在GUI(图形用户界面)开发中,Gtk是一个广泛使用的库,尤其在Linux系统中,它为开发者提供了创建美观且功能丰富的应用程序的工具。本篇我们将深入探讨如何在Gtk中实现透明按键以及设置背景图片,这些都是提升应用...

    gtk安装文档

    1. 进入`/opt/gtk/bin`目录。 2. 执行`./gtk-demo`。 - 如果成功出现GTK的示例图形界面,则表明GTK已正确安装。 #### 五、总结 通过以上步骤,我们已经完成了GTK及其相关依赖库的安装。这些步骤适用于CentOS 5.1...

    linux /proc 文件 系统监控器 GTK

    GTK(GIMP Toolkit)是用于创建图形用户界面的库,广泛应用于各种Linux桌面应用。在"linux /proc 文件系统监控器 GTK"项目中,开发者使用GTK库创建了一个窗口程序,该程序可以实时更新并展示从/proc文件系统收集到的...

    gtk-sharp-2.12.25

    gtk-sharp-2.12.25 windows安装文件

    LINUX应用程序开发指南:使用GTK+ GNOME库目录

    ### LINUX应用程序开发指南:使用GTK+ GNOME库目录 在深入探讨使用GTK+和GNOME库进行LINUX应用程序开发之前,让我们先对这个主题有一个全面的理解。本指南旨在为那些希望在LINUX环境下创建图形用户界面(GUI)应用...

    GTK应用.pdf

    #include <gtk/gtk.h> void hello(GtkWidget *widget, gpointer data) { g_print("Hello World\n"); } int main(int argc, char *argv[]) { GtkWidget *window, *button; gtk_init(&argc, &argv); window = ...

    GTK常用控件:图片控件源代码

    GTK,全称GIMP ToolKit,是一个用于创建图形用户界面的开源库,广泛应用于Linux和其他类UNIX系统。在GTK中,图片控件是用于显示图像的重要组件,它允许开发者将静态图片或者动态图像(如动画GIF)集成到应用程序中。...

    gtk.rar_C++ gtk_gtk_gtk+_gtk教程

    GTK+是其更现代且功能更丰富的版本,提供了丰富的组件和工具,用于构建跨平台的应用程序。在C++中使用GTK+,可以通过`gtkmm`库来实现,它为C++提供了一套面向对象的接口。 本教程旨在详细介绍如何使用GTK+和`gtkmm`...

    GTK学习笔记.doc

    在 GTK+ 应用程序终止时,需要调用 `gtk_exit()` 函数,该函数是 `gdk_exit()` 的封装,`gtk_exit()` 只是调用 `exit(1)`,将 errorcode 作为参数进行传递。 GTK+ 初始化函数 ----------------- GTK+ 提供了 `gtk_...

Global site tag (gtag.js) - Google Analytics