GTK+ 2.0 教程

译者: huzheng,konghui,ferry,carton,yang_yi,ddd,tingle

版本号: V_0.1.0  2002年6月25日

本文是有关通过 C 语言接口使用 GTK (the GIMP Toolkit) 的教程。


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
术语表