- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
大家一起用gtk编程5(窗口布局初探)
大家一起用gtk 编程5(窗口布局初探)
大家一起用gtk 编程5(窗口布局初探)
转载请注明出处:
作者:lvjinhua at gmail dot com
(本文档最后由杨小邪编辑整理)
2009.1.7
?7、窗口布局初探
上回说到如何使用gdb 来调试我们的程序,这回简单地介绍下如何有效地进行窗口布局,这也将
是gtk 编程基础入门的最后一部分;在接下来的日子里,笔者将针对gtk 中的所有内容分专题,
对每一部分都进行详细并且深入的描述,好了,进入今天的主题。
运行效果图:
hello_box.c
/* 本例的主要目的是在主窗口中旋转一个box 控件,再在box 控件中
* 放置一个单行编辑框和一个按钮
* 并且单击按钮退出程序
*/
#includegtk/gtk.h
//按钮 “button”的回调函数
void
cb_button(GtkWidget *widget, gpointer data)
{//cb = call back
g_print(你单击了按钮\n);
gtk_main_quit();
}
int
main(int argc, char *argv[])
{
GtkWidget *main_window; //主窗口对象
GtkWidget *hbox, *button, *editor;
gtk_init(argc, argv);
main_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
g_signal_connect(G_OBJECT(main_window), destroy,
G_CALLBACK(gtk_main_quit), NULL);
gtk_window_set_title(GTK_WINDOW(main_window),
Hello,Dubuntu2!);
gtk_window_set_default_size(GTK_WINDOW(main_window),
200,50);
button = gtk_button_new_with_label(退出程序);
g_signal_connect(G_OBJECT(button), clicked,
G_CALLBACK(cb_button),NULL);
editor = gtk_entry_new();
hbox = gtk_hbox_new(FALSE, 10);
gtk_box_pack_start(GTK_BOX(hbox), editor, TRUE, TRUE, 10);
gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 10);
gtk_container_add(GTK_CONTAINER(main_window), hbox);
gtk_widget_show_all(main_window);
gtk_main();
return 0;
编程程序:gcc -o hello_box hello_box.c `pkg-config --cflags gtk+-2.0`
-g -Wall
运行程序:./hello_box
组件之间的关系:
程序注释:
1)几个新增函数:
?g_print(你单击了按钮\n); :这是 glib 库提供的面向控制台的输出
函数,其功能同标准C 的 printf() 差不多,但在gtk 程序中使用
g_print()更具可移值性。
?gtk_entry_new():构造一个 “单行文本输入框” 对象并返回此对象的指
针。
?gtk_hbox_new():构造一个 “水平”的盒子,用来装 单行输入框和按钮
“
?gtk_box_pack_start():往盒子中”装 “东西(这里是 enter 和 button)
?gtk_widget_show_all
您可能关注的文档
- 同步机轧钢机磁极铁芯加工招标公告.PDF
- 同心旋转圆柱间隙流场中纤维取向的动态模拟.PDF
- 同济大学受上海嘉定新城发展有限公司委托开展对嘉定新城马.PDF
- 同济大学受上海嘉定新城发展有限公司委托开展对澄浏南路.PDF
- 同济大学授予博士硕士学位和培养研究生学科目录及招生培养.PDF
- 压缩机规格书.PDF
- 周边设备联机指南.PDF
- 含铁氧化物在转炉炼钢中的应用.PDF
- 哈尔滨学院大学生创新创业训练计划项目结题相关要求.doc
- 哈尔滨九洲电气股份有限公司发行股份购买资产暨关联交易报.PDF
- 兼并与收购 导论:从若干案例讲起.ppt
- 【广告策划-】2010创意户外广告.ppt
- 数控加工工艺与设备第七章 数控线切割加工工艺及设备 (NXPowerLite).ppt
- 空调系统水管设计讲稿.ppt
- Easy Cluster - 4Phase:简单的集群-相位.ppt
- Social Network Capital, Economic Mobility and Poverty Traps社会网络资本,经济的流动性和贫困陷阱.ppt
- 大学生职业生涯规划 第二讲 认识环境.ppt
- 提升管理水平_减少用工风险.ppt
- 两高《关于办理危害食品安全刑事案件适用法律若问题的解释》.ppt
- 国际商务谈判第五章 商务谈判前的准备.pptx
文档评论(0)