Delphi应用技巧与常见问题你问我答PDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:刘宏昆等编著
- 出 版 社:北京:机械工业出版社
- 出版年份:2003
- ISBN:7111120124
- 页数:299 页
第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
- 《钒产业技术及应用》高峰,彭清静,华骏主编 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《现代水泥技术发展与应用论文集》天津水泥工业设计研究院有限公司编 2019
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《强制执行前沿与热点问题》陈兴责编;乔宇 2020
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《英汉翻译理论的多维阐释及应用剖析》常瑞娟著 2019
- 《党员干部理论学习培训教材 理论热点问题党员干部学习辅导》(中国)胡磊 2018
- 《数据库技术与应用 Access 2010 微课版 第2版》刘卫国主编 2020
- 《区块链DAPP开发入门、代码实现、场景应用》李万胜著 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017
- 《新工业时代 世界级工业家张毓强和他的“新石头记”》秦朔 2019
- 《智能制造高技能人才培养规划丛书 ABB工业机器人虚拟仿真教程》(中国)工控帮教研组 2019
- 《AutoCAD机械设计实例精解 2019中文版》北京兆迪科技有限公司编著 2019