【问题标题】:Create TVirtualTable via Code only without drop component仅通过代码创建 TVirtualTable,无需放置组件
【发布时间】:2015-06-08 04:56:57
【问题描述】:

最近我想使用 TscExcelExport 导出数据。 如果我通过 Design Component 使用 TVirtualTable,它可以完美运行。

EmpVT.First;
EmpVT.Filtered := False;
while not EmpVT.Eof do
  begin
    //Salary Virtual Table
    VirtualTableBankTransferListExport.Append;
    VirtualTableBankTransferListExport.FieldByName('EMPID').AsInteger := EmpVT.FieldByName('EMPID').AsInteger;
    VirtualTableBankTransferListExport.FieldByName('EMPBANKGROUPNO').AsInteger := EmpVT.FieldByName('BANKGROUPNO').AsInteger;
    VirtualTableBankTransferListExport.FieldByName('EMPTRANSBANKACCNAME').AsString := EmpVT.FieldByName('EMPBANKACCNAME').AsString;
    VirtualTableBankTransferListExport.FieldByName('EMPTRANSBANKACCNO').AsString := EmpVT.FieldByName('EMPBANKACCNO').AsString;
    VirtualTableBankTransferListExport.FieldByName('BANKACCNO').AsString := EmpVT.FieldByName('BANKACCNO').AsString;
    VirtualTableBankTransferListExport.FieldByName('PERIOD').AsString := PaySlipPeriod;
    VirtualTableBankTransferListExport.FieldByName('BANKNAME').AsString := EmpVT.FieldByName('BANKNAME').AsString;
        VirtualTableBankTransferList.FieldByName('TRANSFERAMOUNT').AsInteger := 0;//Format('%s%s%.*d', [EmpVT.FieldByName('REGIONCODE').AsString,EmpVT.FieldByName('EMPCODE').AsString,4,EmpVT.FieldByName('EMPCODE').AsInteger]); //EmpVT.FieldByName('EMPCODE').AsString;
    VirtualTableBankTransferListExport.FieldByName('BANKID').AsString := EmpVT.FieldByName('BANKID').AsString;
    VirtualTableBankTransferListExport.FieldByName('TBANKNAME').AsString := EmpVT.FieldByName('TBANKNAME').AsString;
    VirtualTableBankTransferListExport.FieldByName('BANKLOCATION').AsString := EmpVT.FieldByName('BANKLOCATION').AsString;
    VirtualTableBankTransferListExport.Post;
    EmpVT.Next;
  end;
  scExcelExport1.WorksheetName := 'Bank Transfer List';
  scExcelExport1.Dataset:=VirtualTableBankTransferListExport;
  scExcelExport1.ExportDataset;
  scExcelExport1.Disconnect;

什么是仅通过代码创建 TVirtualTable 而不会在表单中删除 TVirtualTable 的正确方法?

感谢您的帮助。

【问题讨论】:

    标签: delphi delphi-xe2 devart


    【解决方案1】:

    安装 CnWizards(功能更多但不太稳定)或 GExperts IDE(更完善但功能更少)插件

    它们都有“组件到代码”向导。

    因此,您将选择您的组件,从菜单中运行此命令并获得创建它的纯 Pascal 源代码。

    附言。实际上可能有多个组件,而不是一个组件:字段通常是它们自己的组件。

    【讨论】:

    • 谢谢你,今晚我会试试你的解决方案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-22
    • 2020-11-12
    • 1970-01-01
    • 2016-05-18
    • 2015-08-02
    • 2017-10-03
    • 1970-01-01
    相关资源
    最近更新 更多