实例——利用列表框为查询参数赋值.txt

来自「Delphi 7组件应用实例 书籍语言: 简体中文 书籍类」· 文本 代码 · 共 52 行

TXT
52
字号
procedure TForm1.Button1Click(Sender: TObject);
var
  I: Integer;
  ParamStr: string;
Begin
  QueryParam.Close;
  for I := 0 to QueryParam.ParamCount - 1 do
  //获取查询组件的参数个数,并将其作为循环控制变量的终值
  begin
    ParamStr := ListBox1.Items[I];
    //获取列表框中的第I个查询参数值
    case QueryParam.Params[I].DataType of
    //此CASE语句,根据查询参数的数据类型,确定赋值形式,
    //查询参数的数据类型有36种,详见表8-1的说明
      ftString:
        Query1.Params[I].AsString := ParamStr;
        //为查询参数赋值
      ftSmallInt:
        QueryParam.Params[I].AsSmallInt := StrToIntDef(ParamStr, 0);
        // 如果字符串是一个有效的数字(10进制或16进制),则StrToIntDef函数
        //将其转换成数字,否则,该函数返回缺省值,此处大缺省值为0
      ftInteger:
        QueryParam.Params[I].AsInteger := StrToIntDef(ParamStr, 0);
      ftWord:
        QueryParam.Params[I].AsWord := StrToIntDef(ParamStr, 0);
      ftBoolean:
        begin
          if ParamStr = 'True' then
            QueryParam.Params[I].AsBoolean := True
          else
            QueryParam.Params[I].AsBoolean := False;
        end;
      ftFloat:
        QueryParam.Params[I].AsFloat := StrToFloat(ParamStr);
      ftCurrency:
        QueryParam.Params[I].AsCurrency := StrToFloat(ParamStr);
      ftBCD:
        QueryParam.Params[I].AsBCD := StrToCurr(ParamStr);
      ftDate:
        QueryParam.Params[I].AsDate := StrToDate(ParamStr);
      ftTime:
        QueryParam.Params[I].AsTime := StrToTime(ParamStr);
      ftDateTime:
        QueryParam.Params[I].AsDateTime := StrToDateTime(ParamStr);
    end;
  end;
  QueryParam.Open;
  //赋完值后,执行查询语句
end;


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?