《X窗口环境的应用程序开发技术》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:汤建平等编写
  • 出 版 社:南京:南京大学出版社
  • 出版年份:1993
  • ISBN:7305022454
  • 页数:450 页
图书介绍:

第一部分 怎样用X编程 3

第一章 如何编写X程序 3

1.1建立与X服务器的连接 3

1.2一个简单的X程序 4

1.2.1示例1程序的简单说明 6

1.2.2示例1的源代码 6

1.3打开一个简单的窗口 10

1.3.1窗口创建 11

1.3.2向窗口管理程序发送“提示” 14

1.3.3刷新显示器 15

1.3.4窗口的释放 16

1.3.5示例2的源代码 16

1.4在openWindow函数中增加新的功能 21

1.4.1图标 21

1.4.2示例3的源代码 23

1.4.3图标位图 26

1.5小结 27

第二章 使用X绘图 28

2.1画直线和矩形 28

2.2图形上下文 29

2.3画直线和矩形的程序 30

2.4利用圆弧画椭圆形 40

2.5椭圆形和矩形的填充 41

2.5.1画出椭圆形和矩形并填充程序的简单说明 42

2.5.2画椭圆形和矩形并填充程序的源代码 42

2.6画多条直线、多个矩形和圆弧 46

2.7小结 49

第三章 在X应用中使用颜色 50

3.1彩色应用程序的可移植性和用途 50

3.2彩色映像 51

3.3用红色画一直线 51

3.3.1画有色线条程序的简单说明 53

3.3.2画有色线条程序的源代码 53

3.4使用多种颜色 58

3.4.1使用多种颜色的例子程序的简单说明 58

3.4.2使用多种颜色的例子程序的源代码 59

3.5小结 65

第四章 书写文字 66

4.1字型 66

4.1.1装载字型 66

4.1.2设置图形上下文 67

4.1.3书写正文 68

4.1.4正文的起始位置 69

4.1.5确定字型大小 69

4.1.6释放字型 70

4.1.7使用字型的技巧 71

4.1.8查找可用的字型 71

4.1.9有限的X服务器资源 74

4.2创建窗口、显示图形和文字的示例程序 75

4.2.1示例程序的简单说明 75

4.2.2示例程序的源代码 75

4.3小结 79

第五章 处理事件 80

5.1事件驱动的编程 80

5.2X事件模型 80

5.3事件请求 81

5.4事件屏蔽 81

5.5从X服务器接收事件 82

5.6事件查询 83

5.7事件类型 84

5.8鼠标按钮事件 85

5.9键盘事件 88

5.10进入/离开事件 89

5.11暴露事件 90

5.12检查事件的程序 92

5.12.1检查事件程序的简单说明 92

5.12.2检查事件程序的源代码 93

5.13使用鼠标绘图的程序 99

5.13.1示例程序的简单说明 99

5.13.2示例程序的源代码 99

5.14对X事件模型的进一步了解 105

5.15小结 105

第六章 键盘事件 106

6.1KeySym的概念 106

6.2元按键 109

6.3鼠标按钮 110

6.4示例程序 111

6.4.1示例程序的简单说明 111

6.4.2示例程序的源代码 111

6.5键盘匹配的改变 117

6.6小结 118

第七章 橡皮条线 119

7.1光栅操作函数 119

7.2GC图形函数综述 123

7.3橡皮条线的示例 123

7.3.1示例程序的简单说明 124

7.3.2示例程序的源代码 125

7.4利用橡皮条技术画椭圆 132

7.4.1示例程序的简单说明 132

7.4.2示例程序的源代码 132

7.5光栅操作函数的演示 136

7.5.1示例程序的简单说明 137

7.5.2示例程序的源代码 141

7.6小结 147

第八章 X标准以及与窗口管理程序的交互 148

8.1X命令行参数 148

8.2显示 149

8.3X几何 149

8.4创建光标 150

8.4.1作为正文的光标 151

8.4.2创建编程人员自己的光标 154

8.4.3光标资源的释放 155

8.5接收命令行参数并设置光标的例子 155

8.5.1示例程序的说明 155

8.5.1示例程序的源代码 158

8.6向窗口管理程序提供信息的例子 171

8.6.1类特性 172

8.6.2窗口的大小 173

8.6.3图标名 174

8.6.3示例程序的源代码 174

8.7小结 179

第二部分 X窗口系统应用程序设计 183

第九章 应用程序Draw概述 183

9.1浮动选择调色板 183

9.1.1点 184

9.1.2正文 184

9.1.3装入新文件 184

9.1.4取消绘图操作 185

9.2命令行参数 185

9.3使用元按键输入 186

9.4关键错误处理 186

9.5致命的I/O错误的处理 188

9.6小结 190

第十章 设计多窗口应用程序 191

10.1浮动调色板 191

10.1.1建立浮动调色板 191

10.1.2增强调色板选择项的亮度 199

10.1.3刷新调色板窗口 200

10.1.4调色板光标的设置与释放 204

10.2绘图窗口 209

10.3清除X窗口和GC资源 210

10.4Draw应用程序的文件格式 211

10.5像素映像和窗口 213

10.5.1XCopyPlane 213

10.5.2用像素映像进行取消操作 214

10.6小结 216

第十一章 Draw应用程序中的事件处理 217

11.1修改eventLoop函数 217

11.2事件屏蔽和事件选择 218

11.3绘图事件 219

11.4调色板选择事件 227

11.5正文入口事件 231

11.6键盘便捷键事件 234

11.7X服务器产生的事件 237

11.8小结 240

第十二章 设计弹出式窗口和对话框 242

12.1建立弹出式窗口 242

12.2调出弹出式窗口 244

12.3查找鼠标光标位置 245

12.4弹出式文件名对话框 247

12.5对话框的实现 248

12.6建立对话窗口 252

12.7显示对话窗口的内容 253

12.8对话事件 254

12.9清除 257

12.10关于瞬间窗口的提示 258

12.11小结 259

第十三章 Draw应用程序的改进 260

13.1暴露事件的处理 260

13.2放大 260

13.3滚动 261

13.4光标编辑 261

13.5区域的截取与粘接/移动与拷贝 262

13.6获取 262

13.7倒置、反置和旋转 262

13.8小结 262

第三部分 X窗口系统的工具箱 265

第十四章 X工具箱简介 265

14.1Xt工具箱 266

14.2Xt示例程序 266

14.2.1初始化Xt库 267

14.2.2创建子widget 268

14.2.3widget的管理 269

14.2.4widget的实现 269

14.2.5widget事件循环 269

14.2.6widget示例程序源代码 270

14.2.7编译Xt程序 272

14.3小结 272

第四部分 X窗口系统协议(第11版) 275

第十五章 X窗口系统协议(第11版) 275

15.1协议格式 275

15.1.1请求格式 275

15.1.2回答格式 275

15.1.3错误格式 275

15.1.4事件格式 275

15.2语法约定 276

15.3常见类型 276

15.4错误 279

15.5键盘 280

15.6指针 280

15.7预定义原子 281

15.8建立连接 282

15.9请求 285

15.10关闭连接 335

15.11事件 336

15.12控制流及并发机制 352

附录A 应用程序DrawApp的源代码 353

附录B X的颜色数据库 421

附录C X的事件类型和结构 423

ButtonPress,ButtonRelease 424

CirculateNotify 425

CirculateRequest 425

ClientMessage 426

ColormapNotify 426

ConfigureNotify 426

ConfigureRequest 427

CreateNotify 427

DestroyNotify 428

EnterNotify,LeaveNotify 428

Expose 429

FocusIn,FocusOut 429

GraphicsExpose,NoExpose 430

GravityNotify 431

KeymapNotify 431

KeyPress,KeyRelease 431

MapNotify,UnmapNotify 432

MappingNotify 432

MaoRequest 433

MotionNotify 433

PropertyNotify 434

ReparentNotify 434

Res izeReq uest 435

SelectionClear 435

SelectionNotify 436

SelectionRequest 436

VisibilityNotify 437

附录D 图形上下文 438

附录E X客户程序的示例 441

bitmap 441

xdpyinfo 441

xev 443

xfd 449

xwd 449

xwininfo 450