Delphi 教程 系列书籍 (054) 《奇思异想编程序Delphi篇》 网友(邦)整理 EMail: [email protected]
下载地址:
内容简介
本书以通俗易懂的语言、列举大量的实例揭示了Delphi语言在系统编程、界面设计、组件编程、图像处理与多媒体应用、网络通信、数据库等方面的应用技巧。涵盖面广泛,例子精典、详尽、实用性极强。本书所展示的小例子,短小精干,恰到好处,点出Delphi语言的应用精髓,并且把主要的操作过程详细地写于书中。 鉴于本书的如上特点,特别适用于Delphi语言编程人员作为参考书或者手册使用。
前言
Delphi自从1994年问世以来获得了空前的成功。现在,全世界已经有上百万的用户使用了Delphi,而且越来越多的开发人员正准备使用它。但是,不容忽视的事实是许多开发人员和笔者当初一样,在熟悉了基本的应用之后,想再进一步的提高就感到非常的困难。因此,迫切希望得到一本好书,不需要太多的基本应用介绍,而是非常丰富的开发技巧和经验的叙述。现在,经过实践的积累,笔者提供长期以来在编程上的一些心得,综合而成《奇思异想编程序——Delphi篇》,以适应大家编程学习的愿望。《奇思异想编程序——Delphi篇》最大的特点就是“奇思异想”的集成。它没有过多关于基本概念、基本知识、基本应用的阐述,而是提供一个个精彩的编程示例,所有内容由以下部分组成:第1章是系统编程。本章就一些常见的系统编程案例进行讲解,为读者提供了主要的程序设计思想及步骤。通过作者画龙点睛般的分析以及读者自己的体验,可以使你对Windows系统有更为深入的了解。当你真正懂得并掌握了系统编程的工作原理之后,举一反三,那么你就可以自己编写程序来获取想要的系统信息、改变系统的外观或者其他的工作方式了。第2章是界面设计。本章通过对一些常用小技巧介绍,让读者认识到用Delphi设计用户界面的优越性。这些常用技巧都比较简单实用(通常不涉及或只涉及一两个消息的处理以及对WindowsAPl函数的使用),相信读者朋友可以很快地了解并掌握它们,这对自己进行丰富多彩的程序界面设计是非常有效的。 第3章是组件编程。Delphi的一个重要特色就是拥有众多的组件,在这些组件的帮助下用户甚至可以不添加一行代码就可以实现一些在VisualC++等语言中要输人大段代码才能完成的功能。但是这些组件还具有一些不为人知的功能,本章就将对Delphi中这些工具及其特性进行有选择性的介绍,希望对读者学习语言或提高编程技巧有所裨益。 第4章是图像处理及多媒体应用。本章内容丰富,其中介绍了对图像修饰和处理的方法,图像格式的转化,图像效果的制作,实现图像和多媒体的自定义设置,以及检测多媒体系统的方法等。第5章是网络及通信。本章介绍了通过Delphi获取网络信息的方法,其中包括工作组、网络协议、MAC地址、IP地址等相关信息,还介绍了网络计算机检测网络设置的方法,以及查询局域网中计算机的相关信息的方法等。第6章是数据库。本章介绍了使用Delphi语言浏览、建立、查询、处理数据库的方法。其中包括修改数据库、获取数据库信息、动态选择数据库、数据库的格式转换、数据库的转移、构成数据感知组件等。第7章是其他内容。其中包括使用Delphi语言实现常用操作,创建密码、制作某些特殊的图像效果等等。每一章都包含有所有的编程经验和技巧,所以,读者在阅读本书时得到的最大好处是:不用再为修改一个个零散的实例代码而伤透脑筋,只需将他们完整地移植,或者将整个程序工程直接添加到读者的饿工程中,略作修改,就起到事倍功半的饿效果。所有应用程序的源代码都包含在光盘中,这样就避免了可能的输入错误,从而保证程序的一次编译通过。不过。因为Delphi的功能实在太强大,我们在紧张而较短的时间内没有将所有方面的编程技巧全部包含进来,我们所考虑的是:这不是一本书就能够完全包含的,我们也会继续努力,将这些经验尽可能早地奉献给读者。本书由蒋明礼、杨晓龙编写,在编写过程中还得到许多专家学者的帮助和支持。 另外,由于笔者的水平有限,在许多问题的考虑和实现上,体现的仅仅是个人的思想,可能读者会觉得有更好的方法来解决同样的问题。特别是对于书中存在的错误,欢迎提出宝贵的意见。作 者 2003年5月
目录
第1章 系统编程
1.1 如何调用WindowsAPI函数实现任务栏的隐藏
1.2 怎样隐藏或显示桌面上的图标
1.3 怎样使程序开机后自动运行(一)
1.4 怎样获取当前任务栏的尺寸大小
1.5 怎样在程序中打开控制面板
1.6 怎样获取驱动器的类型信息
1.7 如何对INI文件进行操作
1.8 怎样获取用户的注册信息
1.9 如何获取窗口标题栏中的文字
1.10 如何获取CPU的信息
1.11 如何获取内存的信息
1.12 如何获取系统颜色配置信息
1.13 如何获取、更改计算机名
1.14 怎样使计算机关闭或重新启动
1.15 怎样获取Windows和System目录
1.16 怎样对临时文件进行操作
1.17 怎样在程序运行时进行刷新操作
1.18 如何检测磁盘空间
1.19 如何检测驱动器是否准备就绪
1.20 如何检测软盘或光盘是否变化
1.21 如何检测系统的启动模式
1.22 如何限制鼠标的移动范围
1.23 如何模拟鼠标的行为
1.24 怎样在自己的程序中启动屏幕保护程序
1.25 怎样隐藏鼠标
1.26 怎样使应用程序不出现在任务栏上
1.27 怎样创建自己的程序组
1.28 怎样使程序开机后自动运行(二)
1.29 如何实现"Enter作为Tab"变换
1.30 如何实现在两个程序之间交换数据
1.31 如何设置大写锁定键
1.32 如何让程序只运行一个实例(一)
1.33 如何让程序只运行一个实例(二)
1.34 如何让程序只运行一个实例(三)
1.35 怎样对多重系统引导的启动菜单进行修改
1.36 怎样删除或重命名正在打开的文件
1.37 怎样交换鼠标左右键
1.38 怎样屏蔽系统功能键
1.39 怎样动态修改显示器分辨率
1.40 如何实现应用程序的热键设置
1.41 如何不让应用程序出现在CTRL+ALT+DEL对话框中
第2章 界面设计
2.1 怎样设计一个不可移动的窗体
2.2 让设计的窗体始终处于最上层
2.3 如何制作动态字幕
2.4 怎样在系统菜单中添加自定义选项
2.5 怎样为窗体创建一个动画光标
2.6 如何创建一个透明的窗体
2.7 怎样在窗体的标题栏上添加显示时间的功能
2.8 如何创建窗体让它始终处于最小化状态
2.9 如何创建窗体让它始终处于最大化状态
2.10 如何使创建的窗体利用帮助文件
2.11 如何制作一个Splash窗口
2.12 怎样添加可移动的组件
2.13 如何限定所设计窗体的大小
2.14 如何在窗体中添加闪烁的文字
2.15 如何制作闪烁的窗体
2.16 如何制作一个圆形窗体
2.17 怎样移动一个无标题栏的窗体
2.18 如何确定一个窗口是TopLevel窗口
2.19 如何自定义组件Memo的边界
2.20 怎样制作带背景的窗体
2.21 怎样使窗体的大小不因为屏幕分辨率的改变而改变
2.22 怎样使窗体的背景色呈渐变状态
2.23 怎样在状态栏上显示一个图标
2.24 怎样屏蔽屏幕保护程序
2.25 怎样制作一个半透明的窗体
2.26 怎样在窗体上制作动画效果
2.27 如何制作窗体标题栏上的按钮
2.28 如何改变提示的字体及颜色
第3章 组件编程
3.1 如何用剪贴板复制和粘贴图像
3.2 如何使程序在运行循环操作时仍能响应界面的操作
3.3 如何让ListBox组件可以显示超长度的项目栏
3.4 如何在RichEdit中实现用鼠标右键定位光标
3.5 如何动态地创建主菜单和菜单项
3.6 如何获取RichEdit组件中光标所在行号
3.7 如何在ListBox和ComboBox组件中实现自动搜索功能
3.8 如何改变ListBox内容中的字体
3.9 如何在Memo的当前位置插入一个文件的内容
3.10 如何制作具有图标及热链接效果的列表框
3.11 如何加速ListBox组件的填充
3.12 如何使BitBtn的标题折行显示
3.13 如何给Animate组件添加OnClick事件
3.14 如何在ListView控件中绘底图
3.15 如何在StringGrid中进行整行删除
3.16 如何为StringGrid中的数据设置只读栏
3.17 如何加速对TreeView组件的填充和清空
3.18 如何消除在Edit组件中按下回车键时系统所发出的声音
3.19 如何令ComboBox自动调节宽度
第4章 图像处理及多媒体应用
4.1 如何用鼠标拉动的形式显示超大图形
4.2 如何为组件增添阴影或投影效果
4.3 如何给图像增添透明文字
4.4 如何把位图转换为图标
4.5 如何在窗体上显示空心字体
4.6 如何将窗体镂空来显示成一个字体
4.7 怎样进行BMP位图的旋转
4.8 怎样进行JPEG到BMP位图的转换
4.9 怎样生成图像镜像
4.10 怎样将色彩灰度化
4.11 怎样将文本转换成图像
4.12 怎样将BMP格式的位图转换为EMF格式
4.13 怎样实现多种渐变色
4.14 怎样实现给窗体遮罩一层灰色
4.15 怎样输出旋转字体
4.16 如何将RichEdit中的文本转换成图像
4.17 如何提高对位图像素的访问速度
4.18 如何复制图像的一部分
4.19 如何创建JPEG图像的缩略图
4.20 如何对图像进行特殊效果处理
4.21 如何利用Delphi在Windows开始按钮上绘图
4.22 如何将鼠标用作画笔
4.23 如何复制当前设备图形
4.24 怎样设计图形的飞人和门帘效果
4.25 怎样进行图像的灰度变换
4.26 怎样实现更多的图像特殊效果处理
4.27 怎样进行简单的动画设计
4.28 怎样显示文本的动画效果
4.29 怎样进行多种图像格式的转换
4.30 怎样制作一个简易记事本
4.31 怎样利用ASCII码制作艺术图案
4.32 怎样制作简易调色板
4.33 怎样自定义颜色对话框
4.34 怎样实现局部放大图像
4.35 怎样制作趣味动态鼠标
4.36 如何检测声卡配置
4.37 如何制作能播放MIDI、WAV和AVI文件的播放器
4.38 如何实现控制左右声道音量
4.39 如何获取Audio-CD的序列号
4.40 如何检测和设置CD-ROM是否自动运行
4.41 如何令CD-ROM自动弹开和关闭
4.42 如何将WAV文件做到EXE文件中
4.43 如何在Windows98中隐藏光驱
4.44 如何显示CD的音轨和时间
4.45 如何进行全屏播放AVI文件
4.46 如何从MP3文件中获得ID3-Tag信息
第5章 网络及通信
5.1 如何实现超级链接效果
5.2 如何在程序控制IE窗口
5.3 如何判断是否安装网络协议
5.4 如何获取网络计算机信息
5.5 如何获取工作组名称及个数
5.6 如何获取本机MAC地址
5.7 如何监测Internet连接类型
5.8 如何实现拨号连接
5.9 如何实现Ping操作
5.10 如何检测某台计算机是否在网上
5.11 如何获取NetBIOS地址
5.12 如何获取工作组内的所有计算机
5.13 如何将域名转换为IP地址
5.14 如何加入网上的图片
5.15 如何获取网络中指定计算机的共享资源
5.16 如何用APl函数获取网络中某台计算机的磁盘空间
5.17 如何用Delphi自带的函数获取网络中指定计算机的磁盘空间
5.18 如何实现网络驱动器的映射和断开
5.19 怎样用自带组件测试网络速度
5.20 怎样利用自带组件创建网络聊天室
5.21 怎样得到用户信息
5.22 怎样获取自己的IP地址
5.23 怎样得到和重设计算机名称
5.24 怎样在局域网中通过计算机名得到IP地址
5.25 怎样在网络邻居中进行文件复制
5.26 怎样得到局域网上某台机器的日期和时间
5.27 怎样取得本机的网络设置信息
第6章 数据库
6.1 如何进行数据集的过滤
6.2 如何自动检测、建立数据库别名和数据表
6.3 如何在程序中动态地建立和使用别名(一)
6.4 如何在程序中动态地建立和使用别名(二)
6.5 如何修改指定字段值
6.6 如何浏览数据集中的数据
6.7 如何显示和编辑图形图像数据
6.8 如何将数据库中字段的值转换成字符串
6.9 如何在数据库表中添加计算字段
6.10 如何使用GotoKey查询记录
6.11 如何使用FindKey查询记录
6.12 如何使用模糊查询查询记录
6.13 如何使用Locate查询记录
6.14 如何获取数据库别名的列表
6.15 如何获取数据库别名的参数信息
6.16 如何获取BDE数据库别名和所有DataBase控件的名称
6.17 如何获取TSession控件可以使用的BDE驱动器名称
6.18 如何获取一个指定的BDE驱动器的信息
6.19 如何获取与数据库控件相连的所有表格的名称
6.20 如何将BMP放人dBASE和Paradox的BLOB字段中
6.21 如何将文本文件转换成Paradox格式的数据库
6.22 如何动态选择数据库和数据表
6.23 如何使用Lookup查询数据库
6.24 如何通过SetRange方法查找固定范围的数据
6.25 如何通过TQuery方法查找固定范围的数据
6.26 如何通过Filter方法查找固定范围的数据
6.27 如何使用数据库的异常处理
6.28 如何压缩Paradox数据表
6.29 如何在运行时创建一个BDE别名
6.30 如何在相关数据库中使用查找控件
6.31 如何显示被删除的数据记录
6.32 如何加快记录指针的移动速度
6.33 如何获取数据库的操作状态
6.34 如何获取数据库记录信息
6.35 如何使用计算字段显示记录位置
6.36 如何实现记录指针位置的存储与返回
6.37 如何修改大量的数据
6.38 如何筛选数据
6.39 如何融合筛选功能和查找功能
6.40 如何不使用data-ware控件编辑数据库
6.41 如何在运行期间控制数据表的布局
6.42 如何实现数据库的缓存更新
6.43 如何实现自动登录数据库
6.44 如何通过IBX获取数据库信息
6.45 如何优化dbase或者FoxPro类型的数据表
6.46 如何在同一个TDBGrid组件中显示多个数据库字段
6.47 如何设计"一对多"主从数据库应用程序
6.48 如何实现数据转移
6.49 如何实现多媒体数据的存储与显示
6.50 窗体设计时设置输入法
6.51 怎样构成数据感知组件
6.52 怎样实现决策图的应用
第7章 其他
7.1 如何显示编辑框中的密码
7.2 如何实现Delphi中的控件数组
7.3 如何创建桌面快捷方式
7.4 如何显示鼠标所指的单词
7.5 如何制作美丽的万花规
7.6 如何拖放文件
7.7 如何实现窗体的自动隐藏/显示功能
7.8 如何在系统的Tray小图标区显示图标
7.9 如何响应Tray小图标区上图标的鼠标事件
7.10 如何将文件添加到"开始"菜单的"文档"中
7.11 如何抽取程序的关联图标
7.12 如何复制、移动及删除文件及其目录
7.13 如何复制文件的多种方法
7.14 怎样监视剪贴板内容
7.15 怎样建立鼠标记录与回放
7.16 怎样模拟打字机效果
7.17 如何清空回收站
7.18 如何获取程序命令行及参数
7.19 如何制作"复活节彩蛋"
7.20 如何自定义消息及消息响应操作
7.21 如何实现口令保护程序
7.22 如何用注册表给应用程序加口令
7.23 如何制作屏幕保护程序
7.24 如何实现屏幕保护程序的预览