- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
GTK图形界面编程简介
由於GTK基本上主要以C語言來撰寫,您必須有C編譯器,Ubuntu預設安裝好後就有gcc了,不過缺少必要的Header file,您可以在文字模式下,安裝build-essential套件,例如:
sudo apt-get install build-essential
安裝完成後,可以寫個基本的C語言程式:
hello.c
#include stdio.h
int main(void) {
printf(Hello! World!\n);
printf(哈囉!C語言!\n);
return 0;
}
編譯並執行看看:
$ gcc -o hello hello.c$./helloHello! World!哈囉!C語言! 再來安裝GTK開發套件libgtk2.0-dev:
sudo apt-get install libgtk2.0-dev
安裝完成後,可以使用pkg-config查看一下GTK的相關編譯環境資訊:
pkg-config --cflags --libs gtk+-2.0
pkg-config會讀取GTK附帶的.pc檔來取得相關編譯資訊,--cflags會列出include目錄,--libs列出所連結的函式庫及其所在目錄,以我的電腦為例:
$ pkg-config --cflags --libs gtk+-2.0-I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/pixman-1? -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 可以分開執行比較清楚,例如:
$ pkg-config --cflags gtk+-2.0-I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/pixman-1 ?$ pkg-config --libs gtk+-2.0-lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0? 所連結的函式庫包括了(擷取翻譯自Compiling Hello World):
GTK(-lgtk):基於 GDK 的 widget 函式庫。
GDK(-lgdk):Xlib 包裏(Wrapper)。.
gdk-pixbuf(-lgdk_pixbuf):影像處理函式庫。
Pango(-lpango):國際化文字。
gobject(-lgobject):GTK 用以為基礎的型態系統。
gmodule(-lgmodule):用來載入執行時期的擴充。
GLib(-lglib):包括各種函式,GTK 基於 GLib,所以您會需要這個函式庫。
Xlib(-lX11):被 GDK 所使用。
Xext(-lXext):包括共享記憶體 pixmaps(shared memory pixmaps)與其它 X 擴充。
math(-lm):因各種目的而被 GTK 所使用的數學函式庫。
?不可免俗的,從最簡單的基本視窗產生開始介紹,視窗標題就叫作「哈囉!GTK+!」好了,請使用任一編輯器來編輯一個helloGtk.c的檔案,內容如下:
helloGtk.c
#include gtk/gtk.h
int main(int argc, char *argv[])
{
GtkWidget *
您可能关注的文档
- GRE填空类反.doc
- 新年英语晚会主持词.doc
- 英语构词法-词根词缀.doc
- 莆田十中2014年高三第五次周考试卷.doc
- 突破虚拟语气的用法(株洲教科院张光明9月25日).doc
- 闹钟裸奔核心代码.doc
- Linux下库的设置:ld.so.conf 文件与PKG_CONFIG_PATH变量.docx
- VB成绩管理系统项目教学法教学案例设计.doc
- java代理详细说明.docx
- Mysql 原生语句中save or update 的各种写法.docx
- 七章货物的保险.pptx
- 三章国际间接投资.pptx
- 人性假设理论.pptx
- 外研高一英语必修三ModuleIntroduction汇总市公开课获奖课件省名师示范课获奖课件.pptx
- 月相成因优质获奖课件.pptx
- 小学二年级语文课件《狐假虎威》省名师优质课赛课获奖课件市赛课一等奖课件.pptx
- 养羊业概况专题知识讲座.pptx
- 微生物的实验室培养市公开课获奖课件省名师示范课获奖课件.pptx
- 人教版六年级下册式与方程整理与复习市公开课获奖课件省名师示范课获奖课件.pptx
- 必威体育精装版高中精品语文教学:第二单元-第7课-诗三首:涉江采芙蓉、-短歌行、归园田居市公开课获奖课件省名师.pptx
最近下载
- 管理学-PPT课件(全).pptx
- 高峰数字(四)_原创精品文档.pdf VIP
- “深圳工匠杯”深圳市第十四届职工技术创新运动会暨2024年深圳技能大赛碳排放管理员技能竞赛理论题库及答案(300题).docx VIP
- 粉针剂包装技术与设备.pptx
- 全文解读新修订的2021《中国共产党统一战线工作条例》ppt精品.pptx VIP
- 白蚁防治服务合同协议书范本.docx VIP
- (2022年新版)义务教育初中英语课程标准详细解读 (新课标解读讲座培训课件).pptx VIP
- 湖南《住宅工程质量常见问题防治技术规程》.docx
- 葡萄酿酒有限公司生产安全事故应急预案.docx VIP
- 路基爆破设计及施工组织方案.doc
文档评论(0)