当前位置:首页 > 工业技术
Delphi应用技巧与常见问题你问我答
Delphi应用技巧与常见问题你问我答

Delphi应用技巧与常见问题你问我答PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:刘宏昆等编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2003
  • ISBN:7111120124
  • 页数:299 页
图书介绍:本书介绍了DELPHI环境和IDE使用等。
《Delphi应用技巧与常见问题你问我答》目录

第1章 Delphi环境和IDE使用 1

1.1 安装Delphi 2

如何从硬盘或者网络安装Delphi 2

可以在同一台机器上安装不同版本的Delphi吗 2

我的显卡有问题吗 3

1.2 优化Delphi环境 3

为什么Delphi启动这么慢 3

如何优化Delphi环境 4

1.3 使用IDE(集成开发环境) 4

Delphi常用文件类型 4

如何实现控件面板的平滑滚动 5

如何在右键快捷菜单中增加编译及查看功能 5

我要重装Delphi了,如何备份我的IDE环境设置 7

为什么IDE界面无法显示 7

怎样改变Delphi新建窗体的默认字体 7

Delphi常用快捷键汇总 8

利用好Delphi的帮助系统 8

第2章 Object Pascal语言 10

2.1 Object Pascal语言基础 11

命名规则 11

如何定义类似C中的static静态变量 11

如何使用非整数类型作下标 12

With的问题 12

2.2 ObjectPascal的数据类型和结构类型 13

如何定义和初始化常量数组 13

如何初始化记录和集合 13

如何传递数组给过程或者函数 14

类型强制和转换 15

如何动态生成对象,如何响应其消息 18

如何取得一个枚举类型有多少个元素 19

关于类和代码优化 20

2.3 时间和日期 20

怎样分解日期 20

怎样在日期前加上5年,或者5个月 20

如何处理千年虫,如何做到不依赖系统的时间设置 20

给出日期,如何知道是这一年的第几周 21

如何将秒数转化成hh:mm:ss格式 21

如何进行农历和公历转换 21

如何判断某一天的天干地支与二十八宿 21

怎样指定月的最后一天 22

如何判断日期是否改变 23

2.4 数值和字符串处理 23

怎样把Byte转换成GB或MB或KB的形式 23

如何求圆周率 23

身份证从15位升到18位的算法 24

检验信用卡的合法性 25

如何区分中英文字符 27

如何判断字符串是国标(GB)码还是大五(BIG5)码 27

如何将数字转换为符合使用习惯的大写金额 28

如何将PChar类型转换成String类型 29

如何判断中英文混合字符串中的汉字和字符的个数 29

怎样进行字符串的扩充 30

第3章 用户界面 31

3.1 形式各异的窗体 32

如何生成非矩形窗口 32

如何令一个窗体总在最前面 33

如何实现窗体的特殊动画显示效果 33

如何设计程序启动画面 35

如何制作渐变色窗体背景 35

3.2 多文档界面(MDI)窗体应用 36

非主窗体的MDI窗体如何创建子窗体 36

如何关闭一个MDI子窗体 36

如何在MDI主窗体中使用背景图片 36

如何移去MDI子窗体的标题栏 37

MDI主窗体如何判断所有的子窗体已关闭 37

如何在MDI主窗体中制作Window菜单,使其能自动添加新打开的MDI子窗体 37

如何消除MDI主窗体的滚动条 38

3.3 控制窗体 38

如何限制窗体的大小 38

当系统结束时Delphi的窗口会收到什么消息 39

如何动态新建窗口 39

如何使窗口一开始就显示在中央 39

如何在Delphi中把窗体控制成不能放大、缩小、移动、关闭 40

如何阻止正在运行的程序窗口的关闭 40

怎样使用PageDown/PageUp滚动窗体 41

怎样在关闭窗口前加入确认对话框 41

如何得到鼠标所在位置的窗体名称 41

3.4 窗体的标题栏 42

如何动态隐藏、显示窗体的标题栏 42

如何闪动标题栏,以提醒用户 43

如何使标题栏文字右对齐 43

如何移动无标题栏的窗体 44

怎样使窗口标题栏中的“关闭”按钮失效 44

3.5 在菜单上做文章 44

如何把Help菜单移到窗体的最右边 44

如何把用户菜单项加入系统菜单并响应这一菜单项 45

如何动态创建菜单 46

怎样才能在菜单中添加一幅图形作为背景 46

怎样规范设计应用软件菜单 47

如何获得和设置菜单字体的大小 48

3.6 制作美观的用户界面 49

为什么窗体和字体在Windows98与Windows2000下不一样 49

窗体、组件的使用原则 49

为什么程序运行在不同平台,界面颜色会不同 50

用户界面设计提示与技巧 50

第4章 控件的使用 53

4.1 CheckBox、ListBox、ComboBox控件的使用 54

如何在一组CheckBox中只允许同时选择任意两个CheckBox 54

设置CheckBox而不激发Click事件 54

如何设置ListView的Item的CheckBox为只读 55

如何在ListBox中加入水平滚动条 55

如何在ListBox中查找字符串 55

如何在两个ListBox间进行拖放操作 56

如何通过鼠标右击选择ListBox中的选项 56

如何判断一个ComboBox是否处于下拉状态 58

如何将系统字体添加到ComboBox组件中去 58

当鼠标在ComboBox的下拉列表上移动(并未选定)时能触发什么事件 59

如何清空ComboBox中输入框的文字 59

如何让ComboBox下拉列表的宽度大于它本身宽度 59

如何使ComboBox在键入时搜索最佳匹配 59

4.2 ListView、TreeView控件的使用 60

怎样使ListView按数字的大小排序 60

如何自己定义ListView的排序方式 61

怎样指定ListView中一行的背景颜色 62

ListView如何响应滚动条消息 63

如何禁止显示ListView的滚动条 63

如何让ListView中的Item始终保持选择状态 63

如何给TreeView中的每一项Item加上可复选的CheckBox 64

如何快速更新TreeView的内容 64

如何自动展开显示TreeView所有节点 65

如何批量处理TreeView节点 65

TreeView的使用 65

4.3 Memo、Edit、Richedit控件的使用 67

怎样实现Memo的Undo功能 67

如何确定Memo控件中的当前行和列 68

如何使Memo在显示大量数据时自动滚屏 68

如何知道Memo中的内容是否已更改 68

如何统计选定的行数 69

如何使用Edit控件的IME属性 69

如何限制编辑框的输入 70

一个窗体上有很多Edit控件有相同的KeyDown事件,如何写最简便 70

在RichEdit中如何定位光标位置 71

如何滚动RichEdit到末端 72

如何让字体左对齐或右对齐 72

如何移动光标到指定行列 72

如何使RichEdit添加大于64KB的内容 72

如何在RichEdit中设置字体的背景色 73

怎样去掉RichEdit中每行中的硬回车 74

4.4 工具栏和按钮控件的使用 75

如何屏蔽掉工具栏的关闭按钮 75

为什么我的ToolBar无法显示全部按钮 75

如何能在ToolBar上自动出现向右翻页的箭头 76

如何实现Word97风格的工具栏 76

如何定制工具栏的按钮 76

如何实现工具栏窗口融合 78

如何设置一个按钮拥有多行Caption 78

如何实现不同风格的Speed Button 79

4.5 其他控件的使用 79

如何使控件透明 79

如何分行提示 79

在状态栏中检测面板双击 80

如何改变Hint的字体和色彩 80

如何让InputBox也能使用密码掩码 81

如何改变ProgressBar的颜色 82

如何动态增减PageControl的页数 82

如何在PageControl页面中动态增加和删除控件 82

如何实现类似VB中的控件数组 83

如何在运行时生成控件 83

如何禁止控件的刷新 84

常用类及控件的名字略写 84

第5章 图形图像 87

5.1 图形图像特殊效果 88

怎样实现推拉效果 88

怎样实现垂直交错效果 88

怎样实现水平交错效果 89

怎样实现雨滴效果 90

怎样实现积木效果 91

怎样实现百叶窗效果 91

用Delphi实现位图显示特技 92

5.2 绘制图形 93

如何画出大小可变的点 93

为什么线的宽度大于1个像素点,对其设置的线型就不起作用了 93

如何在Canvas中画角 94

Canvas为何不能用异或的方法消去所画曲线 94

如何清除Canvas上的内容 95

如何使窗体保存Canvas的输出 95

如何实现界面色彩渐变效果 95

TPaintBox与TImage的比较 96

如何使图片旋转 96

5.3 图像颜色转换 97

如何把RGB颜色转变成Delphi的Tcolor 97

如何把TColor换算为RGB的整数值 98

如何把TColor转换为HTML颜色字符串 98

如何把颜色值转换为灰度值 98

如何把灰度值转换为颜色值 99

Delphi实现图像灰度处理的几种方法 99

如何使位图反色 102

如何将彩色或者灰度图像转化为黑白图像 103

如何实现RGB颜色和CMYK颜色的转化 103

如何生成两种颜色的中间色 104

5.4 图像格式转换 104

如何能把文本转换为GIF文件 104

如何判断TImage图片的类型 105

如何进行图标文件和位图文件的相互转换 106

在Delphi中如何使用JPEG图像文件 107

如何进行JPEG文件和位图文件的相互转换 108

如何进行WMF文件和位图文件的相互转换 109

第6章 多媒体技术 111

6.1 音频控制和播放 112

如何检测声卡是否存在 112

如何改变左右声道 112

如何控制声道的输出 112

怎样调节设备音量的大小 113

如何用DirectSound技术同时播放两个WAV文件 114

如何从MP3文件中获得ID3-Tag信息 116

如何播放背景音乐 118

如何显示CD音轨的时间 118

怎样判断光驱内的光盘是否是CD 119

如何在DVD播放的过程中实现原、伴音切换 119

怎样令MessageDlg像MessageBox那样发出声音 120

怎样播放自定义的声音 120

6.2 视频控制和播放 122

如何计算VCD文件的播放时间 122

如何获得正在播放的媒体的播放时长 122

如何预览视频文件 123

如何全屏幕播放一个视频文件 123

如何检测AVI文件是否播放结束 124

如何在视频文件中批量抓取图像 124

为什么使用RealPlayerActiveX控件播放RM格式电影时,只有声音没有图像 125

如何播放Flash 126

如何把Flash文件中某一帧的画面抓下来 127

怎样使播放的Flash动画随窗口大小的改变而改变 127

多媒体组件使用解析 128

第7章 报表和打印 130

7.1 打印机设置 131

如何获取默认打印机的信息 131

怎样设置默认打印机 132

如何获取打印机队列的状态信息 132

如何获取当前打印机的名称,驱动程序,打印端口信息 133

如何检测当前打印机状态 134

如何获取当前打印机的分辨率 135

怎样设置打印方向 135

为什么我的EpsonLQ1600k针式打印机不能打印自定义纸张 135

怎样自定义纸张的大小 135

如何调用系统的“页面设置”对话框 136

如何在Delphi中显示“添加打印机”的对话框 137

如何使用代码添加打印机 137

如何判断打印机是否支持图形打印 138

7.2 报表和统计图形的制作 138

怎样使用打印机画布制作报表 138

怎样使用QReport组内控件制作报表 140

怎样使用ChartFx控件绘制统计图形 141

7.3 报表的打印 142

如何在打印或打印预览前获取报表页数 142

如何将要打印的报表完全转换成一个文本文件 143

如何直接驱动打印机进行字符打印 143

如何在不同的打印分辨率下进行打印 144

如何打印RTF文档 144

如何打印Word文档 145

如何打印Html文档 145

如何撤销打印 146

如何打印测试页 146

如何实现简单的图像打印功能 146

第8章 网络和通信 148

8.1 Intemet与TCP/IP编程 149

拨号连入Intemet后,如何获取本机动态分配的IP地址 149

如何取得客户机(访问机器)的名称和IP地址 150

如何检测Intemet连接方式 151

如何检测计算机是否连接到Intemet 152

如何实现浏览器的超级链接效果 153

如何判断一个URL是否有效 154

如何从一个URL下载文件 155

如何实现断点续传 155

如何调用系统默认电子邮件程序发送邮件 156

如何获得或设定系统默认电子邮件程序 156

如何创建Intemet快捷方式 157

如何判断是否安装了TCP/IP协议 159

如何动态添加或改变TCP/IP网络设置中的DNS地址 159

怎样进行Winsocket编程 160

8.2 浏览器相关编程 161

如何建立并使用Cookie 161

如何将网页内容保存为字符串以及根据字符串显示成网页 163

如何进行TWebBrowser构件的初始化和终止化 164

如何实现TWebBrowser构件的常用命令操作 164

如何读取和设置TWebBrowser构件当前页面字体大小 166

如何使TWebBrowser构件获得焦点 167

如何提取TWebBrowser构件中的页面的所有链接 167

如何使TWebBrowser处于编辑状态 168

如何添加URL到收藏夹和整理收藏夹 168

如何打印一个Web页面 170

如何获得一个URL的载体 171

如何判断当前网页下载成功 171

如何查看IE历史记录信息 172

如何清除IE历史记录信息 173

如何在IE右键菜单中添加菜单项 174

如何在IE工具栏上添加按钮 176

8.3 局域网 178

如何检查计算机的网络连接情况 178

如何获取局域网所有工作组信息 178

如何实现网络驱动器的映射和断开 180

如何取得所有的网络映射驱动器的列表 181

如何知道有哪些计算机与自己的机器连接 182

如何使用Windows中的浏览计算机对话框 183

如何列举一个工作组中的所有计算机的名称 184

如何获取局域网上指定计算机的共享资源 185

如何在局域网中复制文件 187

如何设置共享文件夹 188

如何获取本机的共享文件夹的口令 189

如何修改网络服务器或域上的计算机的登录密码 189

8.4 调制解调器及串口通信 190

如何获得调制解调器的状态 190

如何获得调制解调器列表 191

如何使用调制解调器拨号上网 191

如何获得串口列表 194

如何实现串行通信 195

第9章 文件和目录 199

9.1 文件操作 200

如何从快捷方式获得被链接的文件的路径 200

如何调用文件属性对话框 200

如何设置文件属性 201

如何合并两个二进制文件 202

如何在Delphi中进行文件复制 202

如何操作临时文件 204

如何取得与文件相关的应用程序的图标 205

如何进行长文件名和短文件名的转换 206

如何彻底地删除文件 206

如何在WindowsNT/2000中删除或重命名正在使用的文件 207

9.2 对文本文件的处理 208

如何判断一个文件是否为文本文件 208

如何实现读取文本文件指定的一行 209

如何从文本文件中读取超过255个字符的行 210

9.3 使用注册表和INI文件 211

如何使用注册表 211

如何实现文件关联 213

如何使用INI文件 214

如何在Win9x中删除或重命名正在使用的文件 217

9.4 目录操作 218

如何删除整个目录树 218

如何判断是否为目录 219

如何取两个路径之间的相对路径 219

如何取得某些特殊文件夹路径 221

如何打开网上邻居、回收站等特殊文件夹 222

如何把删除的文件放入Windows的回收站里 223

如何清空Windows的回收站 223

第10章 系统相关 225

10.1 Windows系统信息 226

如何获取Windows及系统路径 226

如何获取Windows版本信息 226

如何获取用户注册信息 229

如何启动控制面板程序 230

如何识别Windows的语言版本 232

如何检测Windows的启动模式 232

如何注销/重启/关闭Windows 233

如何禁止关闭Windows 234

如何禁止按键盘的Power键快速关机的功能 234

10.2 屏幕和桌面 236

如何获取不包括任务栏在内的桌面尺寸 236

如何用代码刷新桌面 236

如何使桌面的图标文字透明 236

如何隐藏/显示桌面上的图标 237

如何改变桌面背景颜色 237

如何更换壁纸 237

如何更改Windows中“开始”菜单的图像 238

如何能够测定用户设置的是小字体还是大字体 238

如何存取系统的颜色信息 239

如何通过代码调用Windows屏幕保护程序 240

如何安装屏幕保护程序 240

如何屏蔽屏幕保护 241

10.3 进程管理 241

如何在后台运行DOS程序 241

如何防止一个程序执行两次 242

如何在自己的程序中转让控制权 243

如何在自己的应用程序中执行/终止一个外部的应用程序 243

如何杀死所有正在运行的程序 243

如何知道进程使用了多少内存 244

如何使程序不出现在Windows的任务栏上 244

第11章 硬件相关 245

11.1 键盘和鼠标 246

如何设置大写锁定键 246

如何用<Enter>键代替<Tab>键实现光标焦点的转换 246

如何屏蔽系统功能键 246

如何设置光标闪烁的速度 247

如何判断用户输入的一个序列是不是一个指定的序列 248

如何检测是否安装了鼠标 248

如何实现鼠标左右键的交换 248

如何限制鼠标移动的范围 249

如何获得鼠标右键点击的对象名称 250

如何用程序模拟鼠标动作 250

如何禁止键盘或鼠标工作 251

11.2 驱动器 252

如何检测驱动器类型 252

如何检测软盘或光盘是否有变化 252

如何检测驱动器容量 253

如何检测驱动器是否就绪 254

如何格式化磁盘 255

如何区分真实光驱和虚拟光驱 256

如何编程控制光驱的弹出和关闭 256

如何监视光驱中是否有光盘 257

如何屏蔽光驱 257

如何设定光盘自动运行特性 258

11.3 其它硬件 259

如何获取CPU相关信息 259

如何获取内存信息 260

如何获取系统的度量信息和相关配置信息 261

如何把显示器设置为节能模式 262

如何获得显示器分辨率 262

如何取得当前显示卡支持的所有显示模式 262

如何让程序支持第二显示器 263

如何动态调整显示器的分辨率 264

如何获得网卡的MAC地址 264

如何获取主板BIOS信息 266

第12章 数据库开发 267

12.1 使用SQL 268

TQuery部件在SQL编程中的运用 268

如何使用SQL连接两个不同类型的数据库之间的表 268

如何让重复的数据只显示一次 269

为什么TQuery的SQL查询无法查询字符串 269

如何在运行状态改变SQL的查询条件 269

如何把Select查询的结果存到一个表中 270

如何从查寻结果中只返回一部分数据 270

如何捕捉运行SQL语句时的错误 270

12.2 连接数据库 271

如何动态设置BDE别名 271

如何动态设置ODBC源 272

如何使用ADO快速连接数据库 273

如何调用编辑ADO连接字符串对话框 273

如何获得BDE信息 274

如何检测系统是否已安装ADO驱动程序 275

12.3 使用数据库 275

在大型数据库系统中,如何避免出现死锁问题 275

如何得知TABLE是否被锁 276

怎样处理数据库中的NULL值 277

如何在Query中做增量查询 277

如何使用Bookmarks记录表中的先前状态 278

如何获得一个ADO连接数据库中的表和存储过程的列表 278

如何动态创建Access数据库 278

如何压缩和修复Access数据库 279

如何将文本文件导入SQL Server 279

如何使Delphi适应SQL Server2000 280

如何自动登录数据库 280

如何控制数据库关键字的重复输入 281

第13章 程序的调试与发布 283

13.1 程序的调试与异常处理 284

Delphi用什么函数来返回错误的编号和有关资料 284

如何调试动态链接库 284

如何调试ActiveForm 285

SQL语句的调试 285

在Delphi中如何处理异常 285

13.2 编写代码中常见的错误 288

在类的实例创建之前使用了它 288

没有释放不再使用的资源 289

指针未初始化和指针失效 290

使用未初始化的PChar类变量 291

误释放了空指针 291

13.3 软件的发布 291

如何建立程序的快捷方式 291

如何建立自己的程序组和程序项 292

如何在桌面上建立程序的快捷方式 293

如何把程序快捷方式放入快速启动工具栏 293

如何使程序随Windows启动而自动启动 294

如何让程序在运行时自动注册ActiveX控件 295

如何发布带有ActiveX控件的应用程序 297

使用RealPlayer的ActiveX控件的软件如何发布 297

怎样编写支持多国语言的程序 297

怎样发布基于SQLServer的程序 298

发布数据库程序需要安装哪些DLL和做哪些设置 298

相关图书
作者其它书籍
返回顶部