linux应用程序开发指南之21-13.pdf

linux应用程序开发指南之21-13.pdf

ID:52955282

大小:349.78 KB

页数:6页

时间:2020-04-03

linux应用程序开发指南之21-13.pdf_第1页
linux应用程序开发指南之21-13.pdf_第2页
linux应用程序开发指南之21-13.pdf_第3页
linux应用程序开发指南之21-13.pdf_第4页
linux应用程序开发指南之21-13.pdf_第5页
资源描述:

《linux应用程序开发指南之21-13.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、下载第13章GnomeApp构件和GnomeUIInfo13.1主窗口GnomeApp所有的Gnome应用程序,除极少数有特殊需要的以外,都可以用GnomeApp作为其主窗口。GnomeApp构件是GtkWindow的子类,它在基本的顶级窗口上增加了很方便的菜单和工具条处理能力,如图13-1所示。用户可以配置GnomeApp构件的下列特性:¥菜单和工具条可以与窗口分离开,或者在窗口上重新安排位置。¥用户可以选择禁止菜单和工具条与Gnome应用程序的窗口分离。¥用户可以选择是否在应用程序的菜单上显示小图标。今后,GnomeApp构件还会添加更多的特性。图13-1Gnu

2、meric电子表格软件,用GnomeApp构件创建界面GnomeApp有一个与其他构件类似的创建函数,见下面的函数列表。第一个参数app_id是一个Gnome与应用程序打交道的内部名称。它应该与传递到gnome_init()函数中的app_id完全一样,一般来说,可以使用应用程序可执行文件的名称。第二个参数是应用程序窗口的标题,如果设为NULL,则不为窗口设置标题。#includeGtkWidget*gnome_app_new(gchar*app_id,216使第二部分Linux编程常用C语言函数库及构件库下载gcha

3、r*title)GnomeApp构件有一个唯一的“内容区”,你可以将应用程序的主要功能放在该区域。在中心区域的四边,可以放置工具条、菜单条、状态条等。函数列表列出了相关的函数。这些函数很容易理解,一般从字面上就可以知道其作用。它们的主要作用是在GnomeApp构件的合适位置放置所需要的构件。为GnomeApp创建菜单条、工具条、状态条也有很简单的方法。添加构件到GnomeApp上,可输入以下语句:#include/*将构件contents添加到GnomeApp构件app的窗口上*/voidgnome_app_set_c

4、ontents(GnomeApp*app,GtkWidget*contents)/*将菜单条menubar添加到GnomeApp构件app的窗口上*/voidgnome_app_set_menus(GnomeApp*app,GtkMenuBar*menubar)/*将工具条toolbar添加到GnomeApp构件app上*/voidgnome_app_set_toolbar(GnomeApp*app,GtkToolbar*toolbar)/*将状态条statusbar添加到GnomeApp构件上*/voidgnome_app_set_statusbar(GnomeA

5、pp*app,GtkWidget*statusbar)13.2GnomeUIInfo13.2.1创建GnomeUIInfoGtk提供了两种方法来为应用程序创建菜单。但是,用这两种方法创建一个很大的菜单是很冗长乏味的,特别是如果菜单还带有图标和快捷键时更是如此。Gnome提供了一个简单的解决方案。为每一个菜单项创建一个GnomeUIInfo模板,并列出它的一些特性:名称、图标、快捷键等。Gnome库函数会自动地用GnomeUIInfo数组模板创建菜单。你也可以用同样的方法创建工具条。下面是GnomeUIInfo.结构的声明:typedefstruct{GnomeUII

6、nfoTypetype;gchar*label;gchar*hint;gpointermoreinfo;gpointeruser_data;gpointerunused_data;GnomeUIPixmapTypepixmap_type;gpointerpixmap_info;guintaccelerator_key;GdkModifierTypeac_mods;GtkWidget*widget;}GnomeUIInfo;第13章GnomeApp构件和GnomeUIInfo使217下载填充上面的结构最方便的方法就是用一段静态的初始化程序(当然,如果愿意,也可以动态地

7、创建)。Gnome函数可以接受一个GnomeUIInfo数组,同时,还有一些宏可以简化、标准化最常用的静态初始化程序。下面是一个典型的例子—一个“文件”菜单:staticGnomeUIInfofile_menu[]={GNOMEUIINFO_MENU_NEW_ITEM(N_("_NewWindow"),N_("Createanewtextviewerwindow"),new_app_cb,NULL),/*"打开"(Open)菜单项*/GNOMEUIINFO_MENU_OPEN_ITEM(open_cb,NULL),/*"另存为"(SaveAs)菜单项*/GNOM

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。