📄 paramtype.pas
字号:
unit ParamType;
interface
uses
{$IFNDEF LINUX}
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
DBCtrls, ExtCtrls, Grids, DBGrids, StdCtrls, ToolWin, ComCtrls,
{$ELSE}
SysUtils, Types, Classes, QGraphics, QControls, QForms, QDialogs, QStdCtrls,
QDBCtrls, QComCtrls, QExtCtrls, QGrids, QDBGrids,
{$ENDIF}
Db, Ora;
type
TfmParamType = class(TForm)
lbParams: TListBox;
btClose: TButton;
rgTypes: TRadioGroup;
Label1: TLabel;
Label2: TLabel;
procedure btCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure lbParamsClick(Sender: TObject);
procedure rgTypesClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
OraSQL: TOraSQL;
end;
var
fmParamType: TfmParamType;
implementation
{$R *.dfm}
procedure TfmParamType.btCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfmParamType.FormShow(Sender: TObject);
var
i:integer;
begin
if OraSQL <> nil then begin
lbParams.Items.Clear;
for i := 0 to OraSQL.Params.Count - 1 do
lbParams.Items.Add(OraSQL.Params[i].Name);
if OraSQL.Params.Count > 0 then
lbParams.ItemIndex:= 0;
lbParamsClick(nil);
end;
end;
procedure TfmParamType.lbParamsClick(Sender: TObject);
begin
if lbParams.ItemIndex >= 0 then
case OraSQL.Params[lbParams.ItemIndex].DataType of
ftString:
rgTypes.ItemIndex:= 0;
ftInteger:
rgTypes.ItemIndex:= 1;
ftFloat:
rgTypes.ItemIndex:= 2;
ftDate:
rgTypes.ItemIndex:= 3;
else
rgTypes.ItemIndex:= -1;
end;
end;
procedure TfmParamType.rgTypesClick(Sender: TObject);
var
DataType: TFieldType;
begin
if lbParams.ItemIndex >= 0 then begin
case rgTypes.ItemIndex of
0: DataType:= ftString;
1: DataType:= ftInteger;
2: DataType:= ftFloat;
3: DataType:= ftDate;
else
DataType:= ftUnknown;
end;
OraSQL.Params[lbParams.ItemIndex].DataType:= DataType;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -