086_《版主答疑-Delphi高级编程技巧》

《版主答疑-Delphi高级编程技巧》

Delphi 教程 系列书籍 (086) 《版主答疑-Delphi高级编程技巧》 网友(邦)整理 EMail: [email protected]

下载地址:

Part1

Part2

Part3

Part4

版主答疑-Delphi高级编程技巧

  • 作者:岳庆生
  • 出版社:清华大学出版社
  • 出版日期:2000年4月
  • ISBN:730200899
  • 页数:568
  • 装帧:精装
  • 开本:16开
  • 版次:1

内容简介

Delphi是Inprise(前Borland)公司推出的一种非常优秀的高效而快速的开发工具。从1995年面世以来,受到了世界各地越来越多的程序员的喜爱。本书采用问答的方式,回答了开发人员在使用该工具中经常遇到的问题。同时也介绍了一些常用的经验和技巧。一般每个问题都有“问题”、“原理”、“步骤”、“多学几招”四个部分或者其中的几个部分。内容则突出实战技巧,一般不涉及很多原理性的内容,解决的问题都是每个程序员开发一般系统可能遇到的具体问题。本书适合于对Delphi有一定了解的读者。对于将要或者正在开发具体软件项目者,则会发现本书更加适用。

目录

第1章 安装和IDE环境

Delphi安装过程一开始就无故终止

Delphi和显示卡驱动程序的冲突

如何阻止Local Interbase服务器程序在系统启动时自动运行?

安装程序在更新/合并BDE的设置时出现错误

安装Delphi的时候出现奇怪的错误,并报告错误号xxx等

在Windows 2000 Bata版上如何安装Delphi?

安装Delphi时出现“Can`t find PVCS”错误

如果不想依赖安装光盘,请问如何从硬盘或者网络上安装Delphi?

如何在程序中构造自己的中断事件?

检测Delphi IDE是否正在运行

第2章 Object Pascal语言

如何在C语言中调用Delphi写的动态连接库?

String类型和PChar类型使用的区别

如何正确地使用TStream的Read/Write方法?

变量申明在interface的private和var中有什么区别?

如何在定义数组时同时给定初值?

如何判断一个pChar的内容是否为空?

如何格式化输出字符串?

如何对字符串加密?

如何进行二进制、十进制和十六进制数的转换?

在Delphi中通过内嵌汇编调用WindowsAPI函数

如何得到过程/函数的地址?

如何通过流保存对象属性值?

如何拷贝一个文件?

如何剪切中文字符串而不会出现乱码?

如何得到X的Y次方?

什么是内存泄漏?

建立最小的Delphi程序

第3章 数据库技术

如何得到SQL返回的计算结果?

Dbase和Prodox数据库的压缩

如何在字段名中使用空格?

如何得知现在数据库操作的进度?

在DBMemo中查找文号

如何在数据库中查询日期

数据表的索引被损坏了怎么办?

如何创建Paradox数据表和索引?

如何恢复在Dbase中被删除的记录?

为何在Paradox数据表中创建indexe时不能设定ixUnique选项?

如何使用动态创建的数据库别名(Alias)?

如何知道某个数据库别名(Alias)所指的数据库目录(如 paradox)或数据库名称(interbase)?

如何优化BDE的设置以提高数据库性能?

使用BDE的ASCll驱动数据库

如何在数据库中读写blob字段?

如何实现用户自定义公式报表计算?

使用TQuery时出现“Error creating cursor handle”错误

如何在程序运行中改变数据库别名指向的路径?

In Memory Table技术的应用

如何设定多用户环境的Paradox数据库?

如何利用DAO存取Access数据库?

利用Table更新Memo字段

如何压缩及修复Access数据库?

如何有效地存取Access数据库?

在Oracle数据库中能否通过存储过程使用自定义函数

如何找到当前BDE文件存在的目录?

检测当前BDE的版本号

如何通过程序在注册表中注册BDE?

如何重整TDBGrid的栏目次序?

如何防止KEY VIOLATION错误?

制作一个数据库快速搜索器

如何实现数据库相关的树型控制?

保存DBGrid中的用户设定

第4章 网络通信和Internet

获知当前网络用户的名称(用户名)

CGI技术的原理和开发概略

多进程间如何通过共享内存实现通信?

列出目前可用的Modem的相关信息

检测网卡的物理地址(MAC地址)

如何得到本地计算机的名字和自己的IP地址?

实现到 Internet的超级链接

如何知道系统有几个串口?

局域网内的消息通信技术

如何捕获Winsock的错误?

网络共享目录的设定

检测当前系统中是否安装了Internet Explore

当前系统默认的浏览器是什么?

如何在程序中利用TAPI通过Modem拨号?

检测当前是否连接到Internet

如何在WebServer程序中返回图像?

监视POP3信箱

第5章 窗体界面和绘图

察看和改变系统的显示分辨率和调色板

Delphi 3图形VCL中的一个Bug

Delphi中控件深度投影及阴影效果的实现

当控件重绘时如何防止闪动的情况?

如何在程序运行时隐藏鼠标?

如何在某个窗口模拟按键?

合理地制作程序启动封面

如何显示旋转的字体?

如何修改对话框使得提示为中文?

如何选择合适的组合框(ComboBox)?

基于调色板的图像消隐技术

如何实现位图背景平铺功能?

如何使得窗体(Form)透明?

闪动窗体标题栏以提醒用户注意

怎样将窗体设成在任意部分都可使用鼠标拖动的窗体?

得到目前系统中焦点所在窗口的句柄

列出系统中当前所有的可用字体

在用户界面中用回车键代替Tab键

询问用户是否真的要关闭窗口

通过系统托盘(trny)显示和隐藏程序界面

如何在系统托盘(tray)上显示弹出菜单?

如何显示和隐藏任务条?

如何改变窗体的系统菜单?

如何显多行提示条?

第6章 多媒体及相关设备

检测当前计算机中是否安装了光驱设备

Delphi 4程序为何不能正常播放Audo-CD?

如何通过编程关闭/开启声音通道或者只关闭其中一个通道?

如何制作自己的屏幕保护程序?

如何检测系统中是否安装了声卡?

如何让系统通过扬声器发出声音?

如何播放一张标准音乐CD(Audio-CD)?

如何控制系统中安 装的操纵杆?

如何打开和关闭光驱?

如何解读MP3文件信息?

如何播放程序资源文件中的声音资源?

将按钮(Button)和指定声音关联

如何检测系统中是否存在鼠标?

如何得到CD的卷标?

检测光驱中是否放置了CD

如何将资源文件加入到EXE程序中去?

如何实现光盘插入自动运行?

如何改变Windows系统桌面墙纸?

第7章 控件开发和使用

在TDBGrid/TstringGrid饲中用回车键代替Tab的功能

设置TDateTimePicker的显示格式

将注册表中的内容转化为.REG文件

标准可视控件如何实现剪贴板的拷贝与粘贴?

检测用户多长时间没有按键盘

MEMO的UNDO功能

超级链接的视觉效果

如何给TListBox加上水平的滚动条?

如何选择合适的组合框?

如何取得Memo控件的编辑内容的行号?

在运行时使用鼠标移动控件

在DBGRID中实现COPY、PASTE功能

如何在StringGrid中使用下拉列表框?

如何在ListBox中添加图标?

第8章 报表和打印

如何最简等地向打印机发送数据?

如何直接控制打印机输出?

如何打印一个位图?

检测打印机的可用输出方式

如何向打印机输出控制字符?

为何有时在QuickReport预览后会耗尽系统资源?

QuickReport中如何指定某台打印设备?

如何直接将DBGrid的内容输出到打印机?

利用Excel输出报表

如何更改打印机使用的纸张类型?

如何设定缺省的打印机?

在QuickReport上是否能够打印任意的控件?

如何在QuickReport的expressions中使用其他数据集的字段?

一次输出QReport的多份拷贝

为什么见不到QReport预览窗口的标题?

在QReport中如何改变打印机设置?

QReport中计算表达式总返回0

QReport的升级问题

在NT 4上打印报表发现已定义了字体的标签经常发生随机变化

如何使用QuiCkReport的Add Printable?

在没有安装打印机驱动程序的机器上使用QuickReport会产生错误

如何使用QuickReport的HTML输出功能?

使用QRCreateList为何总是出错?

第9章 Windows API函数

如何防止同一个程序运行多次?

Windows系统退出时的窗体事件处理

如何取得当前的环境变量?

如何得到当前运行程序的路径和文件名?

如何通过程序设置系统时间?

如何同步运行一个外部程序?

如何获取一个应用程序的标题图标

实现不同的退出Windows的方式

如何激活/禁止屏幕保护程序?

如何得到当前系统用户名以及系统的产品注册号?

如何通过程序移动当前光标的位置?

判定Windows的安装目录和临时文件目录

如何截获得到按下方向键的键盘消息?

如何将程序添加到自动启动项中?

如何得知窗口现在的状态为最大或最小化?

使程序不出现在任务条中

如何创建或者更换系统墙纸(wallpaper)?

Delphi中有没有类似于VB的DoEvents方法?

用Application.OnMessage事件处理消息

禁止Form的放大/缩小/移动/关闭

如何检测鼠标进入或者离开一个可视控件?

如何在“系统菜单条”中添加自己的内容?

如何通过程序控制ComboBox显示了拉菜单或者隐藏下拉菜单?

如何自定义窗体最大化按钮?

如何使用EnumChildWindows()函数枚举子窗体?

在程序中如何区分左shift键和右shift键?

如何捕获磁盘错误?

如何得知Memo中能够显示多少行信息?

如何把文件删除到回收站中?

第10章 其他

如何获得当前系统相关目录?

如何调出系统的文件查找对话框?

如何使用Windows HOOK技术?

屏幕抓词的技术原理

如何判断一个字符串中有多少个汉字?

如何进行GB码与BIG5码之间的转换?

如何编写一个精确的延时程序?

如何检测当前系统中是否正在运行SoftICE?

如何“处理”加密的Delphi控件?

显示密码编辑框中的密码

如何对中文输入法调用和管理?

如何用拼音首字符序列来实现检索功能?

如何实现与资源管理器之间的文件拖放?

如何将一个流的内容写入到剪贴板中并处理?

如何实现远程屏幕截取?

附录

附录A:Delphi及BDE各版本升级列表

附录B:Delphi编译错误信息对照表

附录C:虚拟键值列表

附录D:BDE错误列表

附录E:常用Internet资源

后记

你可能感兴趣的:(Delphi)