Delphi中建议使用的语句

二零二零吖

二零二零吖

2016-02-19 19:58

下面是个简单易学的Delphi中建议使用的语句教程,图老师小编详细图解介绍包你轻松学会,喜欢的朋友赶紧get起来吧!

  网上找来的 感觉对入门者很有启示 收藏一下了!
  No.1 判断逻辑类型 }
  var B: Boolean;
  begin
  B := Boolean(2); //这样只是为了调试//B := True;
  if B = True then ShowMessage('B = True'); //不建议//不安全
  ///////
  if B then ShowMessage('B'); //建议//简短
  end;

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  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;

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  { 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.Fieldvalues['姓名'] := Edit1.Text; //Borland建议的方法。以及Paramvalues[]
  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;

  { No.11 Result函数指针 }
  function FuncName: Boolean;
  begin
  FuncName := True; //不建议//并且放在赋值号右边不能当普通变量
  ///////
  Result := True; //建议//扩充性好
  end;

  function FuncSum(A: array of Integer): Integer;
  var I: Integer;
  begin
  Result := 0;
  for I := Low(A) to High(A) do
  Result := Result + A[I]; //可不能用 FuncSum := FuncSum + A[I];
  end;

  { No.12 必须执行的代码、使用try ... finally ... end语句 }
  var
  vStringList: TStringList;
  begin
  vStringList := TStringList.Create;
  vStringList.LoadFromFile('c:emp.txt');
  ShowMessage(vStringList.Text);
  vStringList.Free; //不建议//如果出现异常资源将无法释放
  ///////
  vStringList := TStringList.Create;
  try
  vStringList.LoadFromFile('c:emp.txt');
  ShowMessage(vStringList.Text);
  finally //建议//即使出现Exit都会执行
  vStringList.Free;
  end;
  end;

  //其他情况1
  begin
  Screen.Cursor := crHourGlass;
  try
  { 耗时操作 }
  finally
  Screen.Cursor := crDefault;
  end;
  end;
  //其他情况2
  begin
  Query1.DisableControls;
  try
  { 操作数据集 }
  finally
  Query1.EnableControls;
  end;
  end;
   

展开更多 50%)
分享

猜你喜欢

Delphi中建议使用的语句

编程语言 网络编程
Delphi中建议使用的语句

Delphi中OnDrawCell的使用技巧

编程语言 网络编程
Delphi中OnDrawCell的使用技巧

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

对使用Delphi制作DLL复用文件的建议

编程语言 网络编程
对使用Delphi制作DLL复用文件的建议

资源文件在DELPHI中的使用

Delphi
资源文件在DELPHI中的使用

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Delphi中预编译指令如何使用

编程语言 网络编程
Delphi中预编译指令如何使用

Delphi中多媒体组件使用解析

编程语言 网络编程
Delphi中多媒体组件使用解析

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

关于用IDhttp发送网站http头的问题

关于用IDhttp发送网站http头的问题

活用DW的数据导入、排序与美化

活用DW的数据导入、排序与美化
下拉加载更多内容 ↓