📄 h_db.pas
字号:
function myTDATALINKDESTROY(slf:TObject;var APropName:String;var s:array of variant):variant;
begin
TDATALINK(slf).DESTROY;
End;
{--------------------}
function myTDATALINKEDIT(slf:TObject;var APropName:String;var s:array of variant):variant;
begin
Result := TDATALINK(slf).EDIT;
End;
{--------------------}
function myTDATALINKUPDATERECORD(slf:TObject;var APropName:String;var s:array of variant):variant;
begin
TDATALINK(slf).UPDATERECORD;
End;
{--------------------}
Function TDATALINKget_ACTIVE(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
Result := TDATALINK(slf).ACTIVE;
End;
Function TDATALINKset_ACTIVE(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
TDATALINK(slf).ACTIVE:=S[0];
End;
{--------------------}
Function TDATALINKget_ACTIVERECORD(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
Result := TDATALINK(slf).ACTIVERECORD;
End;
Function TDATALINKset_ACTIVERECORD(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
TDATALINK(slf).ACTIVERECORD:=S[0];
End;
{--------------------}
Function TDATALINKget_BUFFERCOUNT(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
Result := TDATALINK(slf).BUFFERCOUNT;
End;
Function TDATALINKset_BUFFERCOUNT(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
TDATALINK(slf).BUFFERCOUNT:=S[0];
End;
{--------------------}
Function TDATALINKget_DATASET(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
Result := TDATALINK(slf).DATASET;
End;
Function TDATALINKset_DATASET(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
TDATALINK(slf).DATASET:=S[0];
End;
{--------------------}
Function TDATALINKget_DATASOURCE(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
Result := TDATALINK(slf).DATASOURCE;
End;
Function TDATALINKset_DATASOURCE(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
TDATALINK(slf).DATASOURCE:=S[0];
End;
{--------------------}
Function TDATALINKget_DATASOURCEFIXED(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
Result := TDATALINK(slf).DATASOURCEFIXED;
End;
Function TDATALINKset_DATASOURCEFIXED(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
TDATALINK(slf).DATASOURCEFIXED:=S[0];
End;
{--------------------}
Function TDATALINKget_EDITING(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
Result := TDATALINK(slf).EDITING;
End;
Function TDATALINKset_EDITING(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
TDATALINK(slf).EDITING:=S[0];
End;
{--------------------}
Function TDATALINKget_READONLY(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
Result := TDATALINK(slf).READONLY;
End;
Function TDATALINKset_READONLY(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
TDATALINK(slf).READONLY:=S[0];
End;
{--------------------}
Function TDATALINKget_RECORDCOUNT(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
Result := TDATALINK(slf).RECORDCOUNT;
End;
Function TDATALINKset_RECORDCOUNT(slf:TObject;var APropName:String;var s:array of variant):variant;
Begin
TDATALINK(slf).RECORDCOUNT:=S[0];
End;
*)
{--------------------}
function myTDATASETAPPENDRECORD(slf:TObject;var APropName:String;var s:array of variant):variant;
var R:Array[0..100] of tvarrec;
maxr:integer;
begin
VarToConsts(S[0],R,maxR);
TDATASET(slf).AppendRecord(slice(r,maxr));
disposeconsts(R,maxr);
end;
{------------------------}
{function myTDataSetDoRecord(slf:TObject;var APropName:String;var s:array of variant):variant;
var fname:array[0..100] of string;
Value:Array[0..100] of variant;
i:integer;
begin
for i:=1 to s[1][0] do begin
FName[i-1]:=S[1][i];
Value[i-1]:=s[2][i];
end;
DoRecord(s[0],TDataSet(slf),
Slice(FName,s[1][0]),Slice(Value,s[2][0]));
end;}
{--------------------}
procedure DBHalInit;
begin
{ AddObjectType('TDATABASE','TCOMPONENT');
AddObjectType('TDATASET','TCOMPONENT');
AddObjectType('TDBDATASET','TDATASET');
AddObjectType('TDATASOURCE','TCOMPONENT');
AddObjectType('TFIELD','TCOMPONENT');
AddObjectType('TDbGrid','TComponent');}
AddConst('ftUnknown',ftUnknown);
AddConst('ftString',ftString);
AddConst('ftSmallint',ftSmallint);
AddConst('ftInteger',ftInteger);
AddConst('ftWord',ftWord);
AddConst('ftBoolean',ftBoolean);
AddConst('ftFloat',ftFloat);
AddConst('ftCurrency',ftCurrency);
AddConst('ftBCD',ftBCD);
AddConst('ftDate',ftDate);
AddConst('ftTime',ftTime);
AddConst('ftDateTime',ftDateTime);
AddConst('ftBytes',ftBytes);
AddConst('ftVarBytes',ftVarBytes);
AddConst('ftAutoInc',ftAutoInc);
AddConst('ftBlob',ftBlob);
AddConst('ftMemo',ftMemo);
AddConst('ftGraphic',ftGraphic);
AddConst('ftFmtMemo',ftFmtMemo);
AddConst('ftParadoxOle',ftParadoxOle);
AddConst('ftDBaseOle',ftDBaseOle);
AddConst('ftTypedBinary',ftTypedBinary);
// AddObjectType('TDATALINK','TPERSISTENT');
// AddProc('TDATABASE.APPLYUPDATES',myTDATABASEAPPLYUPDATES,[0]);
AddProc('TDATABASE.CLOSE',myTDATABASECLOSE,[2]);
AddProc('TDATABASE.CLOSEDATASETS',myTDATABASECLOSEDATASETS,[2]);
AddProc('TDATABASE.COMMIT',myTDATABASECOMMIT,[2]);
AddProc('TDATABASE.OPEN',myTDATABASEOPEN,[2]);
AddProc('TDATABASE.ROLLBACK',myTDATABASEROLLBACK,[2]);
AddProc('TDATABASE.STARTTRANSACTION',myTDATABASESTARTTRANSACTION,[2]);
// AddProc('TDATABASE.VALIDATENAME',myTDATABASEVALIDATENAME,[0]);
AddProp('TDATABASE.DATASETCOUNT',TDATABASEget_DATASETCOUNT,nil);
AddProp('TDATABASE.ISSQLBASED',TDATABASEget_ISSQLBASED,nil);
AddProp('TDATABASE.INTRANSACTION',TDATABASEget_INTRANSACTION,nil);
AddProp('TDATABASE.TEMPORARY',TDATABASEget_TEMPORARY,TDATABASEset_TEMPORARY);
AddProp('TDATABASE.ALIASNAME',TDATABASEget_ALIASNAME,TDATABASEset_ALIASNAME);
AddProp('TDATABASE.CONNECTED',TDATABASEget_CONNECTED,TDATABASEset_CONNECTED);
AddProp('TDATABASE.DATABASENAME',TDATABASEget_DATABASENAME,TDATABASEset_DATABASENAME);
AddProp('TDATABASE.DRIVERNAME',TDATABASEget_DRIVERNAME,TDATABASEset_DRIVERNAME);
AddProp('TDATABASE.KEEPCONNECTION',TDATABASEget_KEEPCONNECTION,TDATABASEset_KEEPCONNECTION);
AddProp('TDATABASE.LOGINPROMPT',TDATABASEget_LOGINPROMPT,TDATABASEset_LOGINPROMPT);
AddProp('TDATABASE.PARAMS',TDATABASEget_PARAMS,TDATABASEset_PARAMS);
AddProp('TDATABASE.SESSIONNAME',TDATABASEget_SESSIONNAME,TDATABASEset_SESSIONNAME);
// AddProc('TDataSet.DoRecord',myTDataSetDoRecord,[0,3,3]);
AddProc('TDATASET.APPEND',myTDATASETAPPEND,[2]);
AddProc('TDATASET.APPENDRECORD',myTDATASETAPPENDRECORD,[0]);
AddProc('TDATASET.CANCEL',myTDATASETCANCEL,[2]);
AddProc('TDATASET.CHECKBROWSEMODE',myTDATASETCHECKBROWSEMODE,[2]);
AddProc('TDATASET.CLEARFIELDS',myTDATASETCLEARFIELDS,[2]);
AddProc('TDATASET.CLOSE',myTDATASETCLOSE,[2]);
AddFun('TDATASET.CONTROLSDISABLED',myTDATASETCONTROLSDISABLED,[2]);
// AddProc('TDATASET.CURSORPOSCHANGED',myTDATASETCURSORPOSCHANGED,[2]);
AddProc('TDATASET.DELETE',myTDATASETDELETE,[2]);
AddProc('TDATASET.DISABLECONTROLS',myTDATASETDISABLECONTROLS,[2]);
AddProc('TDATASET.EDIT',myTDATASETEDIT,[2]);
AddProc('TDATASET.ENABLECONTROLS',myTDATASETENABLECONTROLS,[2]);
AddProc('TDATASET.FETCHALL',myTDATASETFETCHALL,[2]);
AddFun('TDATASET.FIELDBYNAME',myTDATASETFIELDBYNAME,[0]);
AddFun('TDATASET.FINDFIELD',myTDATASETFINDFIELD,[0]);
AddFun('TDATASET.FINDFIRST',myTDATASETFINDFIRST,[2]);
AddFun('TDATASET.FINDLAST',myTDATASETFINDLAST,[2]);
AddFun('TDATASET.FINDNEXT',myTDATASETFINDNEXT,[2]);
AddFun('TDATASET.FINDPRIOR',myTDATASETFINDPRIOR,[2]);
AddProc('TDATASET.FIRST',myTDATASETFIRST,[2]);
// AddFun('TDATASET.GETCURRENTRECORD',myTDATASETGETCURRENTRECORD,[0]);
// AddProc('TDATASET.GETFIELDLIST',myTDATASETGETFIELDLIST,[0,0]);
AddProc('TDATASET.GETFIELDNAMES',myTDATASETGETFIELDNAMES,[0]);
// AddProc('TDATASET.GOTOBOOKMARK',myTDATASETGOTOBOOKMARK,[0]);
AddProc('TDATASET.INSERT',myTDATASETINSERT,[2]);
AddProc('TDATASET.INSERTRECORD',myTDATASETINSERTRECORD,[0]);
// AddFun('TDATASET.ISLINKEDTO',myTDATASETISLINKEDTO,[0]);
AddProc('TDATASET.LAST',myTDATASETLAST,[2]);
AddFun('TDATASET.LOCATE',myTDATASETLOCATE,[0,0,0]);
AddFun('TDATASET.LOOKUP',myTDATASETLOOKUP,[0,0,0]);
AddFun('TDATASET.MOVEBY',myTDATASETMOVEBY,[0]);
AddProc('TDATASET.NEXT',myTDATASETNEXT,[2]);
AddProc('TDATASET.OPEN',myTDATASETOPEN,[2]);
AddProc('TDATASET.POST',myTDATASETPOST,[2]);
AddProc('TDATASET.PRIOR',myTDATASETPRIOR,[2]);
AddProc('TDATASET.REFRESH',myTDATASETREFRESH,[2]);
// AddProc('TDATASET.SETFIELDS',myTDATASETSETFIELDS,[0]);
// AddProc('TDATASET.SETDETAILFIELDS',myTDATASETSETDETAILFIELDS,[0]);
AddProc('TDATASET.UPDATECURSORPOS',myTDATASETUPDATECURSORPOS,[2]);
AddProc('TDATASET.UPDATERECORD',myTDATASETUPDATERECORD,[2]);
AddProc('TDATASET.APPLYUPDATES',myTDATASETAPPLYUPDATES,[2]);
AddProc('TDATASET.COMMITUPDATES',myTDATASETCOMMITUPDATES,[2]);
AddProc('TDATASET.CANCELUPDATES',myTDATASETCANCELUPDATES,[2]);
AddProc('TDATASET.REVERTRECORD',myTDATASETREVERTRECORD,[2]);
// AddFun('TDATASET.UPDATESTATUS',myTDATASETUPDATESTATUS,[2]);
AddProp('TDATASET.BOF',TDATASETget_BOF,nil);
AddProp('TDATASET.BOOKMARK',TDATASETget_BOOKMARK,TDATASETset_BOOKMARK);
AddProp('TDATASET.CANMODIFY',TDATASETget_CANMODIFY,nil);
AddProp('TDATASET.DATASOURCE',TDATASETget_DATASOURCE,nil);
// AddProp('TDATASET.DEFAULTFIELDS',TDATASETget_DEFAULTFIELDS,TDATASETset_DEFAULTFIELDS);
AddProp('TDATASET.EOF',TDATASETget_EOF,nil);
AddProp('TDATASET.FIELDCOUNT',TDATASETget_FIELDCOUNT,nil);
AddProp('TDATASET.FOUND',TDATASETget_FOUND,nil);
AddProp('TDATASET.MODIFIED',TDATASETget_MODIFIED,nil);
AddProp('TDATASET.RECORDCOUNT',TDATASETget_RECORDCOUNT,nil);
// AddProp('TDATASET.RECORDSIZE',TDATASETget_RECORDSIZE,TDATASETset_RECORDSIZE);
AddProp('TDATASET.STATE',TDATASETget_STATE,nil);
AddProp('TDATASET.UPDATEOBJECT',TDATASETget_UPDATEOBJECT,TDATASETset_UPDATEOBJECT);
// AddProp('TDATASET.UPDATERECORDTYPES',TDATASETget_UPDATERECORDTYPES,TDATASETset_UPDATERECORDTYPES);
AddProp('TDATASET.UPDATESPENDING',TDATASETget_UPDATESPENDING,nil);
AddProp('TDATASET.ACTIVE',TDATASETget_ACTIVE,TDATASETset_ACTIVE);
// AddProp('TDATASET.AUTOCALCFIELDS',TDATASETget_AUTOCALCFIELDS,TDATASETset_AUTOCALCFIELDS);
AddProp('TDATASET.CACHEDUPDATES',TDATASETget_CACHEDUPDATES,TDATASETset_CACHEDUPDATES);
AddProp('TDATASET.FILTER',TDATASETget_FILTER,TDATASETset_FILTER);
AddProp('TDATASET.FILTERED',TDATASETget_FILTERED,TDATASETset_FILTERED);
// AddProp('TDATASET.FILTEROPTIONS',TDATASETget_FILTEROPTIONS,TDATASETset_FILTEROPTIONS);
// AddProp('TDATASET.BEFOREOPEN',TDATASETget_BEFOREOPEN,TDATASETset_BEFOREOPEN);
// AddProp('TDATASET.AFTEROPEN',TDATASETget_AFTEROPEN,TDATASETset_AFTEROPEN);
// AddProp('TDATASET.BEFORECLOSE',TDATASETget_BEFORECLOSE,TDATASETset_BEFORECLOSE);
// AddProp('TDATASET.AFTERCLOSE',TDATASETget_AFTERCLOSE,TDATASETset_AFTERCLOSE);
// AddProp('TDATASET.BEFOREINSERT',TDATASETget_BEFOREINSERT,TDATASETset_BEFOREINSERT);
// AddProp('TDATASET.AFTERINSERT',TDATASETget_AFTERINSERT,TDATASETset_AFTERINSERT);
// AddProp('TDATASET.BEFOREEDIT',TDATASETget_BEFOREEDIT,TDATASETset_BEFOREEDIT);
// AddProp('TDATASET.AFTEREDIT',TDATASETget_AFTEREDIT,TDATASETset_AFTEREDIT);
// AddProp('TDATASET.BEFOREPOST',TDATASETget_BEFOREPOST,TDATASETset_BEFOREPOST);
// AddProp('TDATASET.AFTERPOST',TDATASETget_AFTERPOST,TDATASETset_AFTERPOST);
// AddProp('TDATASET.BEFORECANCEL',TDATASETget_BEFORECANCEL,TDATASETset_BEFORECANCEL);
// AddProp('TDATASET.AFTERCANCEL',TDATASETget_AFTERCANCEL,TDATASETset_AFTERCANCEL);
// AddProp('TDATASET.BEFOREDELETE',TDATASETget_BEFOREDELETE,TDATASETset_BEFOREDELETE);
// AddProp('TDATASET.AFTERDELETE',TDATASETget_AFTERDELETE,TDATASETset_AFTERDELETE);
AddProp('TDBDATASET.DATABASE',TDBDATASETget_DATABASE,nil);
// AddProp('TDBDATASET.DBHANDLE',TDBDATASETget_DBHANDLE,TDBDATASETset_DBHANDLE);
AddProc('TDATASOURCE.EDIT',myTDATASOURCEEDIT,[2]);
AddFun('TDATASOURCE.ISLINKEDTO',myTDATASOURCEISLINKEDTO,[0]);
AddProp('TDATASOURCE.AUTOEDIT',TDATASOURCEget_AUTOEDIT,TDATASOURCEset_AUTOEDIT);
AddProp('TDATASOURCE.DATASET',TDATASOURCEget_DATASET,TDATASOURCEset_DATASET);
AddProp('TDATASOURCE.ENABLED',TDATASOURCEget_ENABLED,TDATASOURCEset_ENABLED);
// AddProc('TFIELD.CREATE',myTFIELDCREATE,[0]);
// AddProc('TFIELD.DESTROY',myTFIELDDESTROY,[2]);
// AddProc('TFIELD.ASSIGN',myTFIELDASSIGN,[0]);
// AddProc('TFIELD.ASSIGNVALUE',myTFIELDASSIGNVALUE,[0]);
AddProc('TFIELD.CLEAR',myTFIELDCLEAR,[2]);
AddProc('TFIELD.FOCUSCONTROL',myTFIELDFOCUSCONTROL,[2]);
// AddFun('TFIELD.GETDATA',myTFIELDGETDATA,[0]);
// AddFun('TFIELD.ISVALIDCHAR',myTFIELDISVALIDCHAR,[0]);
// AddProc('TFIELD.SETDATA',myTFIELDSETDATA,[0]);
// AddProc('TFIELD.SETFIELDTYPE',myTFIELDSETFIELDTYPE,[0]);
AddProp('TFIELD.ASBOOLEAN',TFIELDget_ASBOOLEAN,TFIELDset_ASBOOLEAN);
AddProp('TFIELD.ASCURRENCY',TFIELDget_ASCURRENCY,TFIELDset_ASCURRENCY);
AddProp('TFIELD.ASDATETIME',TFIELDget_ASDATETIME,TFIELDset_ASDATETIME);
AddProp('TFIELD.ASFLOAT',TFIELDget_ASFLOAT,TFIELDset_ASFLOAT);
AddProp('TFIELD.ASINTEGER',TFIELDget_ASINTEGER,TFIELDset_ASINTEGER);
AddProp('TFIELD.ASSTRING',TFIELDget_ASSTRING,TFIELDset_ASSTRING);
AddProp('TFIELD.ASVARIANT',TFIELDget_ASVARIANT,TFIELDset_ASVARIANT);
// AddProp('TFIELD.ATTRIBUTESET',TFIELDget_ATTRIBUTESET,TFIELDset_ATTRIBUTESET);
// AddProp('TFIELD.BDECALCFIELD',TFIELDget_BDECALCFIELD,TFIELDset_BDECALCFIELD);
AddProp('TFIELD.CANMODIFY',TFIELDget_CANMODIFY,nil);
AddProp('TFIELD.DATASET',TFIELDget_DATASET,nil);
AddProp('TFIELD.DATASIZE',TFIELDget_DATASIZE,nil);
// AddProp('TFIELD.DATATYPE',TFIELDget_DATATYPE,TFIELDset_DATATYPE);
AddProp('TFIELD.DISPLAYNAME',TFIELDget_DISPLAYNAME,nil);
AddProp('TFIELD.DISPLAYTEXT',TFIELDget_DISPLAYTEXT,nil);
AddProp('TFIELD.EDITMASK',TFIELDget_EDITMASK,TFIELDset_EDITMASK);
AddProp('TFIELD.FIELDNO',TFIELDget_FIELDNO,nil);
AddProp('TFIELD.ISINDEXFIELD',TFIELDget_ISINDEXFIELD,nil);
AddProp('TFIELD.ISNULL',TFIELDget_ISNULL,nil);
AddProp('TFIELD.SIZE',TFIELDget_SIZE,TFIELDset_SIZE);
AddProp('TFIELD.TEXT',TFIELDget_TEXT,TFIELDset_TEXT);
AddProp('TFIELD.VALUE',TFIELDget_VALUE,TFIELDset_VALUE);
AddProp('TFIELD.NEWVALUE',TFIELDget_NEWVALUE,TFIELDset_NEWVALUE);
AddProp('TFIELD.OLDVALUE',TFIELDget_OLDVALUE,nil);
AddProp('TFIELD.CALCULATED',TFIELDget_CALCULATED,TFIELDset_CALCULATED);
AddProp('TFIELD.DISPLAYLABEL',TFIELDget_DISPLAYLABEL,TFIELDset_DISPLAYLABEL);
AddProp('TFIELD.DISPLAYWIDTH',TFIELDget_DISPLAYWIDTH,TFIELDset_DISPLAYWIDTH);
AddProp('TFIELD.FIELDNAME',TFIELDget_FIELDNAME,TFIELDset_FIELDNAME);
AddProp('TFIELD.INDEX',TFIELDget_INDEX,TFIELDset_INDEX);
AddProp('TFIELD.LOOKUP',TFIELDget_LOOKUP,TFIELDset_LOOKUP);
AddProp('TFIELD.LOOKUPDATASET',TFIELDget_LOOKUPDATASET,TFIELDset_LOOKUPDATASET);
AddProp('TFIELD.LOOKUPKEYFIELDS',TFIELDget_LOOKUPKEYFIELDS,TFIELDset_LOOKUPKEYFIELDS);
AddProp('TFIELD.LOOKUPRESULTFIELD',TFIELDget_LOOKUPRESULTFIELD,TFIELDset_LOOKUPRESULTFIELD);
AddProp('TFIELD.KEYFIELDS',TFIELDget_KEYFIELDS,TFIELDset_KEYFIELDS);
AddProp('TFIELD.READONLY',TFIELDget_READONLY,TFIELDset_READONLY);
AddProp('TFIELD.REQUIRED',TFIELDget_REQUIRED,TFIELDset_REQUIRED);
AddProp('TFIELD.VISIBLE',TFIELDget_VISIBLE,TFIELDset_VISIBLE);
(* AddProc('TDATALINK.CREATE',myTDATALINKCREATE,[2]);
AddProc('TDATALINK.DESTROY',myTDATALINKDESTROY,[2]);
AddFun('TDATALINK.EDIT',myTDATALINKEDIT,[2]);
AddProc('TDATALINK.UPDATERECORD',myTDATALINKUPDATERECORD,[2]);
AddProp('TDATALINK.ACTIVE',TDATALINKget_ACTIVE,TDATALINKset_ACTIVE);
AddProp('TDATALINK.ACTIVERECORD',TDATALINKget_ACTIVERECORD,TDATALINKset_ACTIVERECORD);
AddProp('TDATALINK.BUFFERCOUNT',TDATALINKget_BUFFERCOUNT,TDATALINKset_BUFFERCOUNT);
AddProp('TDATALINK.DATASET',TDATALINKget_DATASET,TDATALINKset_DATASET);
AddProp('TDATALINK.DATASOURCE',TDATALINKget_DATASOURCE,TDATALINKset_DATASOURCE);
AddProp('TDATALINK.DATASOURCEFIXED',TDATALINKget_DATASOURCEFIXED,TDATALINKset_DATASOURCEFIXED);
AddProp('TDATALINK.EDITING',TDATALINKget_EDITING,TDATALINKset_EDITING);
AddProp('TDATALINK.READONLY',TDATALINKget_READONLY,TDATALINKset_READONLY);
AddProp('TDATALINK.RECORDCOUNT',TDATALINKget_RECORDCOUNT,TDATALINKset_RECORDCOUNT);
*)
end;
Initialization DBHalInit;
RegisterClasses([TDataBase,TDataSource,TFIeld,TDataSet]);
End.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -