网站大量收购独家精品文档,联系QQ:2885784924

Linux C从入门到精通 第2版01窗体.pptVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Logo Logo Logo Logo Logo Logo Logo Logo Logo Logo 窗体 本讲大纲: 初始化 建立窗口 结束应用程序 回调函数 其他窗体函数 初始化 无论写哪一个GTK+程序需要调用gtk_init函数对GTK+库函数进行初始化。gtk_init()函数的具体介绍如下表18.1所示: 名称:: gtk_init 功能: 初始化GTK+库 头文件: #includegtk/gtk.h 函数原形: voidgtk_init(int*argc,char***argv); 参数: argc指向主函数argc的指针 argv指向主函数argv的指针 返回值: 无 建立窗口 名称:: gtk_window_new 功能: 建立窗口 头文件: #includegtk/gtk.h 函数原形: GtkWidget*gtk_window_new( 参数: 无 返回值: 无 名称:: gtk_widget_show 功能: 显示窗口 头文件: #includegtk/gtk.h 函数原形: gtk_widget_show(GtkWidget*window) 参数: 无 返回值: 无 GTK+的构件是GUI的组成部分。窗口、检查框、按钮和编辑字段都属于构件。通常将构件和窗口定义为指向GtkWidget结构的指针。在GTK+中,GtkWidget是用于所有构件和窗口的通用数据类型。 GTK+库进行初始化后,大多数应用建立一个主窗口。在GTK+中,主窗口常常被称为顶层窗口。顶层窗口不被包含在任何其他窗口内,所以它没有上层窗口。在GTK+中,构件具有父子关系,其中父构件是容器,而子构件则是包含在容器中的构件。顶层窗口没有父窗口,但可能成为其他构件的容器。 在GTK+中建立构件分两步:建立构件,然后使它可以看得见。gtk_window_new()函数负责建立窗口。如表18.3所示,gtk_widget_show()函数负责使它成为可见的窗体,如表18.4所示。 名称:: gtk_main 功能: 等待事件的发生 头文件: #includegtk/gtk.h 函数原形: voidgtk_main(void); 参数: 无 返回值: 无 结束应用程序 窗体程序在创建之后需要进行推出,而gtk_main_quit()函数可以结束程序,它通常在回调函数中被调用。函数具体内容如表18.6所示: 名称:: gtk_main_quit 功能: 结束应用程序 头文件: #includegtk/gtk.h 函数原形: voidgtk_main_quit(void); 参数: 无 返回值: 无 回调函数 由于程序必须能够对用户的操作做出相应,在基于GUI的程序设计中信号是必要的。移动鼠标,按下按钮,敲入正文或者关闭窗口,将给应用软件的回呼函数提供信号。信号可能需要应用软件来加以处理。如:字处理软件有使字体变黑的按钮。如果用户按下了按钮,就需要调用使字体变黑的程序。与此类型,如果用户关闭了主窗口,在实际关闭窗口以前要进行某些处理(如保存文件,清除等)。 在GTK+中经常产生各种信号,多数情况下信号被忽略。以按钮构件为例,应用软件有专门用于按钮的信号。当用户按下鼠标或释放鼠标按钮时,当用户电机鼠标时,或者当鼠标移过按钮或离开按钮时都产生各自的信号。应用程序可以忽略掉一些信号,只对感兴趣的事件加以处理。 当需要对信号进行处理时,需要用GTK+登记回调函数,并将它和构件联系在一起。构件可以登记回调函数,回调函数可与多个构件联系在一起。 g_signal_connect()函数用于登记一个GTK+信号,其功能有点像普通信号登记函数signal.当某个空间发出信号,程序就会去执行由g_signal_connect登记的回调函数。函数内容如表18.7所示 名称:: g_signal_connect 功能: 信号登记函数 头文件: #includegtk/gtk.h 函数原形: gulongg_signal_connect(gpointer*object,constgchar*name,GCallbackfunc,gpointerdata); 参数: object发出信号的控件 name信号名称 func回调函数(对信号要采取的动作) data传给回调函数的数据 返回值: 其它窗体函数 gtk_window_set_title()函数可以修改程序的标题。窗口的标题会出现在标题栏中。在X窗体系统中,标题栏被窗体管理器管理,并由程序员指定。标题应该帮助用户区分当前窗体与其它窗体。 gtk_window_set_title(GTK_WINDOW(window),”MainWindow”); gtk_window_get_resizable()函数可以获

您可能关注的文档

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档