Linux应用程序开发指南:使用Gtk+/Gnome库

副标题:无

作   者:许宏松等编著

分类号:

ISBN:9787111080770

微信扫一扫,移动浏览光盘

简介

   本书介绍了Linux下图形用户接口(GUI)编程技术。全书共18章,分五个部分。第一部分介绍Linux GUI编程架构以及编程基础知识,第二部分介绍Linux 编程常用C语言函数库glibc、构件库Gtk+、Gnome,第三部分介绍Linux下的GUI生成器Glade,第四部分介绍Linux编程调试工具gdb及xxgdb。第五部分包括三个附录,附录A是书中使用的示例GnomeHello的源代码,附录B介绍了一些与Gtk+/Gnome编程相关的在线资源,附录C是Gtk+/Gnome对象的简要介绍。   本书中的Gtk+构件示例都来自于GTK 1.2.3软件包的示例。如果下载并安装了GTK 1.2.3软件包,则能够在展开的源代码目录下找到这些示例代码。   本书适用于有Linux使用经验及C语言编程基础的读者阅读。   

目录

目 录

前言

第一部分 linux gui编程框架及编程基础

第1章 linux软件开发概述 1

1.1 关于linux 1

1.2 关于linux的桌面环境 2

1.3 linux系统中的软件开发 3

1.3.1 开发所使用的库 3

1.3.2 gnome的开发结构 4

1.4 开发linux应用程序的编程语言

和编程工具 6

1.5 本书的结构 7

第2章 gtk+/gnome开发简介 8

2.1 安装gtk+/gnome库 8

2.2 第一个gtk+应用程序 9

2.2.1 一个什么也不能做的窗口 9

2.2.2 示例代码的含义 9

2.2.3 gtk的hello world 10

2.2.4 gtk+的信号和回调函数原理 12

2.2.5 hello world代码解释 14

.2.2.6 运行helloworld 17

2.3 gnome应用程序 17

2.4 gnu c 编译器 18

2.4.1 使用 gcc 18

2.4.2 gcc 选项 18

2.5 初始化库 19

2.6 用popt分析参数 20

2.6.1 参数分析方法 20

2.6.2 gnomehello程序的参数分析 22

2.7 国际化 25

2.8 保存配置信息 27

2.8.1 读出存储的配置数据 28

2.8.2 在配置文件中存储数据 30

2.8.3 配置文件迭代器 30

2.8.4 节迭代器 33

2.8.5 其他的配置文件操作 33

2.9 会话管理 34

2.10 gtk+的主循环 36

2.10.1 主循环基本知识 36

2.10.2 退出函数 36

2.10.3 timeout函数 37

2.10.4 idle函数 37

2.10.5 输入函数 38

2.11 编译应用程序 39

2.11.1 生成源代码树 39

2.11.2 configure.in文件 41

2.11.3 makefile.am文件 43

2.11.4 安装支持文件 44

第二部分 linux 编程常用c 语言

函数库及构件库

第3章 glib库简介 49

3.1 类型定义 49

3.2 glib的宏 49

3.2.1 常用宏 49

3.2.2 调试宏 50

3.3 内存管理 52

3.4 字符串处理 53

3.5 数据结构 55

3.5.1 链表 55

3.5.2 树 59

3.5.3 哈希表 63

3.6 gstring 65

3.7 计时器函数 66

3.8 错误处理函数 67

3.9 其他实用函数 67

第4章 构件定位 69

4.1 构件的显现、映射和显示 69

4.2 其他的构件概念 70

4.3 构件的类型转换 72

4.4 组装构件 72

4.4.1 尺寸分配 73

4.4.2 gtkwindow构件 74

4.4.3 gtkbox 76

4.4.4 表格构件gtktable 79

4.4.5 固定容器构件gtkfixed 83

4.4.6 布局容器构件gtklayout 85

第5章 按钮构件 87

5.1 普通按钮gtkbutton 87

5.2 开关按钮gtktogglebutton 90

5.3 检查按钮gtkcheckbutton 91

5.4 无线按钮gtkradiobutton 91

第6章 调整对象 95

6.1 创建一个调整对象 95

6.2 使用调整对象 95

6.3 调整对象内部机制 96

第7章 文本构件gtktext 98

7.1 创建、配置文本构件 98

7.2 操作文本 99

7.3 键盘快捷键 100

7.4 gtktext示例 100

第8章 范围构件gtkrange 105

8.1 滚动条构件gtkscrollbar 105

8.2 比例构件gtkscale 105

8.2.1 函数和信号 105

8.2.2 常用的范围函数 106

8.2.3 键盘和鼠标绑定 107

8.2.4 示例 107

第9章 杂项构件 114

9.1 标签构件gtklabel 114

9.2 箭头构件gtkarrow 117

9.3 工具提示对象gtktooltips 119

9.4 进度条构件gtkprogressbar 120

9.5 对话框构件 126

9.6 pixmap 127

9.7 标尺构件gtkruler 134

9.8 文本输入构件gtkentry 137

9.9 微调按钮构件gtkspinbutton 140

9.10 组合框gtkcombo 146

9.11 日历构件gtkcalendar 148

9.12 颜色选择构件gtkcolorselect 158

9.13 文件选择构件gtkfileselect 162

第10章 容器构件gtkcontainer 165

10.1 事件盒构件gtkeventbox 165

10.2 对齐构件gtkalignment 166

10.3 框架构件gtkframe 167

10.4 比例框架构件gtkaspectframe 169

10.5 分栏窗口构件gtkpanedwindow 170

10.6 视角构件gtkviewport 174

10.7 滚动窗口构件gtkscrolled

window 175

10.8 按钮盒构件gtkbuttonbox 177

10.9 工具条构件gtktoolbar 181

10.10 笔记本构件gtknotebook 187

第11章 分栏列表构件gtkclist 193

11.1 创建分栏列表构件gtkclist 193

11.2 操作模式 193

11.3 操作分栏列表构件列标题 194

11.4 操纵列表 194

11.5 向列表中添加行 196

11.6 在单元格中设置文本和pixmap

图片 197

11.7 存储数据指针 198

11.8 处理选择 198

11.9 信号 199

11.10 gtkclist示例 199

第12章 树构件 204

12.1 创建新树构件 204

12.1.1 添加一个子树 204

12.1.2 处理选中的列表 205

12.1.3 树构件内部机制 205

12.1.4 信号 206

12.1.5 函数和宏 206

12.2 树项构件gtktreeitem 208

12.2.1 信号 209

12.2.2 函数和宏 210

12.3 树构件示例 210

第13章 gnomeapp构件和gnomeuiinfo 215

13.1 主窗口gnomeapp 215

13.2 gnomeuiinfo 216

13.2.1 创建gnomeuiinfo 216

13.2.2 将gnomeuiinfo转换为构件 218

第14章 状态条构件 221

14.1 状态条构件简介 221

14.2 gnomeappbar构件 221

14.3 状态条构件gtkstatusbar 222

第15章 对话框 225

15.1 gnomedialog构件 225

15.1.1 创建对话框 225

15.1.2 填充对话框 226

15.1.3 处理gnomedialog的信号 226

15.1.4 最后的修饰 227

15.2 模态对话框 229

15.3 一个对话框示例 230

15.4 特殊对话框 231

15.4.1 gnomeabout 231

15.4.2 gnomepropertybox—属性框 233

15.4.3 gnomemessagebox—消息框 234

第16章 gdk 基础 236

16.1 gdk和xlib 236

16.2 gdkwindow 237

16.2.1 gdkwindow和gtkwidget 237

16.2.2 gdkwindow属性 238

16.3 视件和颜色表 240

16.3.1 gdkvisual 240

16.3.2 视件的类型 241

16.3.3 颜色和gdkcolormap 242

16.3.4 获得颜色表 244

16.4 可绘区和pixmap 244

16.5 事件 245

16.5.1 事件类型 245

16.5.2 事件屏蔽 247

16.5.3 在gtk+中接收gdk事件 248

16.5.4 鼠标按键事件 250

16.5.5 键盘事件 252

16.5.6 鼠标移动事件 254

16.5.7 焦点变更事件 257

16.6 鼠标指针 257

16.6.1 指针定位 257

16.6.2 独占指针 258

16.6.3 改变光标 259

16.7 字体 259

16.8 图形上下文 263

16.9 绘图 267

16.9.1 画点 267

16.9.2 画线 268

16.9.3 矩形 268

16.9.4 画弧 269

16.9.5 多边形 269

16.9.6 文本 270

16.9.7 pixmap像素映射图形 270

16.9.8 rgb缓冲 271

第三部分 linux gui 生成器glade

第17章 glade:gui生成器 273

17.1 安装glade 273

17.1.1 glade简介 273

17.1.2 安装glade 273

17.1.3 在gnome主菜单下为glade

创建菜单项 274

17.1.4 在gnome面板上创建快捷

按钮 275

17.2 用glade生成图形用户接口 275

17.2.1 glade的界面简介 275

17.2.2 用glade创建应用程序界面 277

第四部分 调试工具

第18章 程序调试 283

18.1 用gdb调试应用程序 283

18.1.1 为调试程序做准备 283

18.1.2 获得gdb帮助 284

18.1.3 gdb常用命令 284

18.1.4 gdb 应用举例 286

18.2 用xxgdb调试应用程序 289

第五部分 附 录

附录a gnomehello源代码 293

附录b 在线资源 304

附录c gtk+/gnome对象总览 306


已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

Linux应用程序开发指南:使用Gtk+/Gnome库
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon