Delphi中建议使用的语句
Delphi中建议使用的语句
No.1 判断逻辑类型
var B: Boolean;
begin
B := Boolean(2); //这样只是为了调试//B := True;
if B = True then ShowMessage('B = True'); //不建议//不安全
///
if B then ShowMessage('B'); //建议//简短
end;
var B: Boolean;
begin
if Edit1.Text = '是' then //不建议//烦琐
B := True
else B := False;
///
B := Edit1.Text = '是'; //建议//简短
end;
No.2 临时SQL查询
begin
QueryTemp.Close;
QueryTemp.SQL.Text := 'SELECT SUM(金额) AS 合计 FROM 销售表';
QueryTemp.Open; //不建议//数据没有关闭造成资源浪费
ShowMessage(Query1.FieldByName('合计').AsString);
/
QueryTemp.SQL.Text := 'SELECT SUM(金额) AS 合计 FROM 销售表';
QueryTemp.Open;
ShowMessage(Query1.FieldByName('合计').AsString);
QueryTemp.Close; //建议用//使用完就关闭
end;
No.3 获取记录数
var
vRecordCount: Integer;
begin
Query1.SQL.Text := 'SELECT * FROM Table1'; //不建议//严重浪费资源,会取得很多不必要得信息
Query1.Open;
vRecordCount := Query1.RecordCount;
Query1.Close;
/
Query1.SQL.Text := 'SELECT COUNT(*) AS 记录数 FROM Table1'; //建议//快速有效、只处理一条记录
Query1.Open;
vRecordCount := Query1.FieldByName('记录数').AsInteger;
Query1.Close;
ShowMessage(IntToStr(vRecordCount));
end;
No.4 字段赋值
begin
Table1.Edit;
Table1.FieldByName('姓名').AsString := Edit1.Text; //不建议
Table1.FieldByName('日期').AsDateTime := Date;
/
Table1['姓名'] := Edit1.Text; //建议//简短、扩充性好
Table1['日期'] := Date;
end;
No.5 使用Self指针
begin
Edit1.Parent := Form1; //不建议//Form1只是一个变量//如果没有分配资源怎么办?
///
Edit1.Parent := Self; //建议
end;
No.6 遍历数据集
var
I: Integer;
begin
Query1.First;
for I := 0 to Query1.RecordCount - 1 do begin //不建议//容易被影响
Query1.Next;
{};
end;
/
Query1.First;
while not Query1.Eof do begin //建议
{ }
Query1.Next;
end;
end;
No.7 利用Sender参数,使代码通用
procedure TForm1.Edit1Change(Sender: TObject);
begin
if Edit1.Text = '' then //不建议
Edit1.Color := clRed;
///
if TEdit(Sender).Text = '' then //建议//复制到EditXChange中很方便
TEdit(Sender).Color := clRed;
end;
No.8 使用默认转换函数
var
I: Integer;
begin
I := StrToInt(Edit1.Text); //不建议
///
I := StrToIntDef(Edit1.Text, 0);//建议//参考StrToFloatDef,StrToDateDef....不过这些只有Delphi6才有
end;
No.9 遍历数组
var
I: Integer;
A: array[0..9] of Integer;
begin
for I := 0 to 9 do //不建议
A[I] := I;
///
for I := Low(A) to High(A) do //建议//扩充性好
A[I] := I;
end;
No.10 利用MaxInt常量
begin
Caption := Copy(Edit1.Text, 3, Length(Edit1.Text) - 3 + 1); //不建议
///
Caption := Copy(Edit1.Text, 3, MaxInt); //建议//嘻嘻,少计算一次
end;
Delphi中建议使用的语句相关推荐
- 转:delphi异常捕获try except语句 和 try finally语句用法
转:http://www.java123.net/v/936977.html 2015-06-24 09:27:48 一直写程序都没管他们,也尽量很少用,今天终于想把他给弄个明白,在网上找来 ...
- DELPHI中操作ACCESS数据库
DELPHI中操作ACCESS数据库(建立.mdb文件,压缩数据库) 以下代码在WIN2K,D6,MDAC2.6下测试通过, 编译好的程序在WIN98第二版无ACCESS环境下运行成功. //在之前u ...
- Delphi中实现多线程同步查询
优秀的数据库应用应当充分考虑数据库访问的速度问题.通常可以通过优化数据库.优化 查询语句.分页查询等途径收到明显的效果.即使是这样,也不可避免地会在查询时闪现一个带有 SQL符号的沙漏,即鼠标变成了查 ...
- delphi中的单元
Object Passal的程序结构很特殊,与其它语言如C++,Object Windows等结构都不同.一个Delphi程序由多个称为单元的源代码模块组成.使用单元可以把一个大型程序分成多个逻辑相关 ...
- DELPHI 中 Window 消息大全使用详解
Window 消息大全使用详解 导读: Delphi是Borland公司的一种面向对象的可视化软件开发工具. Delphi集中了Visual C++和Visual Basic两者的优点:容易上手.功能 ...
- Delphi中的线程类
Delphi中有一个线程类TThread是用来实现多线程编程的,这个绝大多数Delphi书藉都有说到,但基本上都是对TThread类的几个成员作一简单介绍,再说明一下Execute的实现和Synchr ...
- Delphi中使用ListView和TreeView的Item中的Data可能被忽略的内存泄漏
Delphi中大家在使用 ListView和TreeView时,一般都会使用到Item的Data属性来保存大家自己的内部数据,这个Data的声明如下: property Data: Pointer; ...
- Delphi中多线程用Synchronize实现VCL数据同步显示
概述: VCL实现同步的另一种方法就是调用线程类的Synchronize的过程,此过程需要一个无参数的procedure,故在此procedure中无法传递参数值,但可以通过类的成员来实现.在类的Ex ...
- delphi中exit,abort,break,continue,halt,runerro 的区别
delphi中表示跳出的有break,continue, exit,abort, halt, runerror. 1.break 强制退出循环(只能放在循环中),用于从For语句,while语句或re ...
最新文章
- selenium 浏览器driver地址
- 查询高考成绩2021一分一段表,一分一段表查询2021 如何查询一分一段表
- k8s之二进制安装etcd集群
- linux 代码统计工具,Shell脚本实现的基于SVN的代码提交量统计工具
- php document.write,在JS中有关document.write()的用法(详细教程)
- python中那纠结的os.system()与空格处理
- nginx解析php失败,为什么nginx不能解析php?
- mysql 热块_MySQL分布式集群之MyCAT(三)rule的分析【转】
- Scikit-Learn机器学习入门
- RK平台ubuntu安装vbox
- 计算机网络技术专业的规划,计算机网络技术专业建设规划
- python ndarray append_9-Python-NumPy数组元素的添加与删除
- 3gpp协议_春天工作室lt;3GPP规范翻译系列gt;1:TS37340协议翻译(导读)第一部分...
- 超经典实用APP UI产品界面设计模板
- SELECT INTO和INSERT INTO SELECT的区别 类似aaa?a=1b=2c=3d=4,如何将问号以后的数据变为键值对 C# 获取一定区间的随即数 0、1两个值除随机数以外...
- 小鹏汽车首批量产车下线,未来将进军L4级别自动驾驶
- (一)spring Boot菜鸟教程-搭建开发环境
- Origin画甘特图-II
- PPT文字怎样做断开效果和穿透效果
- 堪萨斯州立大学计算机科学,堪萨斯州立大学有哪些专业?