GTK入门教程、GTK详解、Anjuta中文手册(更新中)

软件和网站开发以及相关技术探讨
杨小邪
帖子: 89
注册时间: 2008-10-10 12:59

GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#1

帖子 杨小邪 » 2009-01-08 12:12

(附件都在最后面,点击下载就行了)
GTK入门教程GTK (GIMP Toolkit) 是一套用于创建图形用户界面的工具包。它遵循 LGPL 许可证,所以可以用它来开发开源软件、自由软件,甚至是封闭源代码的商业软件,而不用花费任何费用来购买许可证和使用权。当前,GTK已经被成功地应用到 了大量的自由软件及商业软件中,已经取得了很大的成功。
这几本入门教程都是从网上搜集的,然后我把它整理成pdf的,内容嘛都是很简单的啦。
GTK详解:(版本有点老了,但这几年GTK也没什么多大变化,所以……)
主要内容:
Table of Contents
中文版说明
简介
从这里开始

用 GTK 来写 Hello World
编译 Hello World 程序
信号和回调函数的原理
事件
Hello World 详解

继续

数据类型
深入探索信号处理函数
改进了的 Hello World

组装构件

组装盒的原理
盒的细节
组装示范程序
用表组装
表组装示例

构件概述

类型转换
构件的组织
无窗口构件

按钮构件

一般按钮 Normal Buttons
开关按钮 Toggle Buttons
复选按钮 Check Buttons
单选按钮 Radio Buttons

调整对象 Adjustments

创建一个调整对象
轻松使用调整对象
“调整对象”的内部机制

范围构件 Range Widgets

滚动条构件 Scrollbar Widgets
比例构件 Scale Widgets

创建一个比例构件
函数和信号(至少讲了函数)

常用的范围函数

设置更新方式
获得和设置调整对象

键盘和鼠标绑定
示例

杂项构件

标签 Labels
箭头 Arrows
工具提示对象 The Tooltips Object
进度条 Progress Bars
对话框 Dialogs
标尺 Rulers
状态栏 Statusbars
文本输入构件 Text Entries
微调按钮 Spin Buttons
组合框 Combo Box
日历 Calendar
颜色选择 Color Selection
文件选择 File Selections

容器构件 Container Widgets

事件盒 The EventBox
对齐构件 The Alignment widget
固定容器 Fixed Container
布局容器 Layout Container
框架 Frames
比例框架 Aspect Frames
分栏窗口构件 Paned Window Widgets
视角 Viewports
滚动窗口 Scrolled Windows
按钮盒 Button Boxes
工具栏 Toolbar
笔记本 Notebooks

菜单构件

手工创建菜单
手工菜单示例
使用套件
套件示例

无文档构件

快捷标签 Accel Label
选项菜单 Option Menu
菜单项 Menu Items

复选菜单项 Check Menu Item
单选菜单项 Radio Menu Item
分隔菜单项 Separator Menu Item
分离菜单项 Tearoff Menu Item

曲线图 Curves
绘图区 Drawing Area
字体选择对话框 Font Selection Dialog
消息对话框 Message Dialog
Gamma 曲线图
图像 Image
插头和插座 Plugs and Sockets
树视区 Tree View
文本视区 Text View

设置构件的属性
超时、IO 和 Idle 函数

超时 Timeouts
监控IO
Idle 函数

高级事件和信号处理

信号函数

连接和断开信号处理函数
阻塞和反阻塞信号处理函数
发出和停止信号

信号的发射和传播

操作选中区

概述
获取选中区信息
提供选中区

拖放

概述
属性
函数

设置源构件
源构件上的信号
设置目的构件
目的构件上的信号

GLib

定义
双向链表
单向链表
存储管理
计时器
字符串处理
实用程序和错误处理函数

GTK 的 rc 文件

rc 文件的功能
GTK rc 文件的格式
rc 文件示例

编写你自己的构件

概述
一个构件的剖析
创建一个复合构件

介绍
选择一个父类
头文件
_get_type() 函数
_class_init() 函数
_init() 函数
其余的...

从头创建构件

介绍
在屏幕上显示构件
表盘构件的原形
主体
gtk_dial_realize()
大小磋商
gtk_dial_expose()
事件处理
可能的增强

深入的学习

涂鸦板,一个简单的绘图程序

概述
事件处理
绘图区构件和绘图
添加XInput支持

允许扩展设备信息
使用扩展设备信息
得到更多关于设备的信息
进一步的讲解

编写 GTK 应用程序的技巧
投稿
鸣谢
教程的版权和许可声明
GTK 信号
GtkObject
GtkWidget
GtkData
GtkContainer
GtkCalendar
GtkEditable
GtkNotebook
GtkList
GtkMenuShell
GtkToolbar
GtkButton
GtkItem
GtkWindow
GtkHandleBox
GtkToggleButton
GtkMenuItem
GtkCheckMenuItem
GtkInputDialog
GtkColorSelection
GtkStatusBar
GtkCurve
GtkAdjustment

GDK 事件类型
示例程序代码

Tictactoe
tictactoe.h
tictactoe.c
ttt_test.c
GtkDial
gtkdial.h
gtkdial.c
dial_test.c
Scribble
scribble-simple.c
scribble-xinput.c
术语表

Anjuta手册
英文 在线:http://anjuta.sourceforge.net/documenta ... anual.html


一、Introduction (简介)
Anjuta是一个为C/C++准备的集成开发环境(IDE)。他是为GTK+/GNOME而开发并具备一系列高级开发功能等特性。他为Linux和UNIX系列的各种命令行程序工具(通常那些工具都只能在字符界面运行,而且对用户不够友好)提供图形接口。
Anjuta致力于解决复杂问题并为功能强大的字符工具提供简易使用的GNOME图形用户接口。尽可能的被设计成用户友好的操作方式。
Anjuta界面
图片
二、开始熟悉anjuta
新手上路: 要想运行anjuta,首先要打开Gnome的主菜单.在"开发"子菜单中你就会找到它.在红帽子8.0或者之后的anjuta版本可以在"其他"项子菜单和后来的编程子菜单.
图2.1 anjuta应用程序图标: 图片
3.1.3.3 宏关键词
宏关键词可用,它们在宏定义中被完善。 宏关键词的名称开始和结束用 符号' @ '.
可用的宏关键词有 : @DATE_TIME@, @DATE_YMD@, @DATE_Y@, @USER_NAME@, @FILE_NAME@, @FILE_NAME_UP@, @FILE_NAME_UP_PREFIX@, @EMAIL@, @TABSIZE@, @INDENTSIZE@, @USETABS@.


点击anjuta图标来运行.IDE就会打开.还可以从终端进入,只要输入anjuta命令即可.如果anjuta是第一次启动.它将提供你一个欢迎信息.
菜单: 在anjuta的主窗口的顶部是菜单条.几乎所有的功能都能够通过点击适当的菜单项来实现.这些功能根据他们的类型被分类.例如,对文件的操作都被分在"文件"菜单项.
图2.2工具条图片
文件菜单
图片:
三、File Operations (文件操作)
3.1创建一个新文件并插入文本
3.1.1 创建一个新文件
要创建一个新文件,选择文件 - > “新建的菜单,或单击新文件按钮在工具栏上。 A new page will appear in the editor (or a new window if the parent document is windowed). This new document will be named newfile#1 , newfile#2 , newfile#3 and so on.一个新的页面将出现在编辑器(或一个新窗口,如果原文件是窗口) 。这一新的文件将被命名为newfile # 1 , newfile # 2 , # 3和newfile等等。
注意:您应该尽快保存新文件以避免任何数据丢失的情况!
3.1.2 文件向导
一个向导还可以用来建立一个新的文件.要创建一个新文件,请选择文件->新建->菜单选择5.这将打开新的文件向导对话框.选择文件类型,输入文件名,后缀名将自动加入.您可以添加许可证信息(根据您的许可选择)和一个标题。
图片:文件->新建->菜单选择5
图片
3.1.3 插入宏
宏可以用来快速编辑重复序列的文字。
注意:在此之前必须激活宏插件!
3.1.3.1 插入
有两种类型的宏:Anjuta宏和用户宏(自定义宏)。
插入宏:To insert macro, move the cursor at the desired place. Select Edit->Macros->Macros.... The dialog window appears. Select the wanted macro in the list. The result of the macro expansion is displayed in the window and a summary is shown in the dialog window. Choose Insert. The expanded macro text is inserted at the cursor position.
将光标移动到期望的地方。选择编辑->宏->宏菜单……对话框窗口将会出现。在表单中选择想要的宏。宏定义的结果将被概括的显示在窗口中。选择插入点。扩展的宏文本将被插入在光标所在处。
图片:编辑->宏->宏,插入宏向导对话框。
图片
3.1.3.2 宏定义
定义宏:From the Insert-Macro window, choose Add or select Edit->Macros->Add Macro... . The Add/Edit window appears. Enter the macro name, choose or define a category and enter a shortcut. Then edit text relative to your macro. The character ' | ' will indicate the cursor position after the macro insertion. Choose OK. The macro is added to the list. (大意是:选择编辑->宏->添加宏,打开添加/编辑窗口,选择或定义一个类,并输入一个shortcut,然后编辑文字和您的宏,再点击确定。)
The user can also erase a macro by selecting it in the list (only My Macros) then by choosing Remove. (可以删除自己定义的宏)Same manner, macro can be edited and modified by selecting it in the list then by choosing Edit. (当然也可以修改它)。
图片:ADD/EDIT macro图片
【更新中】(可能因为放假要中断一段时间,请原谅)
附件
gtk2详解.tar.bz2
GTK详解
(343.38 KiB) 已下载 11265 次
GTK入门教程.rar
GTK入门教程
(684.66 KiB) 已下载 13745 次
上次由 杨小邪 在 2009-01-08 19:00,总共编辑 1 次。
头像
Jarson
帖子: 2371
注册时间: 2008-07-21 9:44
来自: 深圳
联系:

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#2

帖子 Jarson » 2009-01-08 12:20

收下了,感谢分享~~ :em63
chenjie815
帖子: 13
注册时间: 2007-12-18 15:23

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#3

帖子 chenjie815 » 2009-01-11 1:47

好东东啊,谢谢LZ
头像
wangdu2002
帖子: 13284
注册时间: 2008-12-13 19:39
来自: 物华天宝人杰地灵

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#4

帖子 wangdu2002 » 2009-01-13 16:36

好东西,支持楼主,收藏兼顶啊!
不过楼主好象没说清楚啊,GTK,GTK+/GTK2,GTK3都是不同啊。
行到水穷处,坐看云起时。
海内生明月,天涯共此夕。
--------------------吾本独!
371285249
帖子: 1
注册时间: 2009-04-11 8:59

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#5

帖子 371285249 » 2009-04-12 20:00

thank you very much
头像
sopheryoung
帖子: 18
注册时间: 2009-03-23 17:36

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#6

帖子 sopheryoung » 2009-05-11 22:10

真烦,下不下来呀
头像
shanliang8008
帖子: 1362
注册时间: 2007-07-16 19:43
来自: tangshan

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#7

帖子 shanliang8008 » 2009-06-04 20:27

这么好的帖子放错地方了
andyfu
帖子: 12
注册时间: 2008-11-04 0:26

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#8

帖子 andyfu » 2009-06-06 9:14

谢谢了啊
头像
t502
帖子: 48
注册时间: 2006-12-05 14:46

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#9

帖子 t502 » 2009-06-07 12:37

感谢楼主,找了很久
头像
neilhhw
帖子: 62
注册时间: 2008-10-26 12:05

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#10

帖子 neilhhw » 2009-06-08 18:23

:em05 :em05 谢谢拉~
头像
U半兔
帖子: 82
注册时间: 2009-06-08 19:02

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#11

帖子 U半兔 » 2009-06-17 21:34

:em11 :em11 :em11
everyday everynight everything it's you!
头像
longthen
帖子: 112
注册时间: 2008-12-10 19:45

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#12

帖子 longthen » 2009-06-18 6:50

这个一定要顶
古之成大事者,不唯有超世之才,亦必有坚韧不拔之志。
宝剑锋从磨砺出,梅花香自苦寒来。
珍惜时间,提高效率。
头像
CGer
帖子: 210
注册时间: 2009-06-21 19:38
来自: CUMT

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#13

帖子 CGer » 2009-06-25 13:29

学习了,谢谢!~ :em09

代码: 全选

sudo apt-get install girlfriend
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
有一些软件包无法被安装。
下列的信息可能会对解决问题有所帮助:
下列的软件包有不能满足的依赖关系:
girlfriend: 依赖: house但是它将不会被安装
girlfriend: 依赖: car但是它将不会被安装
house,car: 依赖: money但是它将不会被安装
E: 无法安装的软件包
[/b]
zofuthan
帖子: 1
注册时间: 2009-06-14 0:53

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#14

帖子 zofuthan » 2009-06-26 20:28

好东西留下了!!! :em02
头像
jjxbest
帖子: 22
注册时间: 2009-03-21 19:13
来自: 大连

Re: GTK入门教程、GTK详解、Anjuta中文手册(更新中)

#15

帖子 jjxbest » 2009-06-29 15:34

楼主:
我新手,想问一下在ubuntu下怎样用Anjuta进行GTK开发?
I love Ubuntu
回复