各位大虾,那位对olecantainer和f1book使用的比较熟的,能不能给个例子。

解决方案 »

  1.   

    unit F1edit;interfaceuses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
      AxCtrls, OleCtrls, TTF160_TLB, Menus, ComCtrls, ToolWin, ImgList,
      ActnList, StdActns, StdCtrls;......
      private
        fu,fb,fi,fl,fc,fr:boolean;
        procedure showhint(Sender:TObject);
        { Private declarations }
      public
        { Public declarations }
      end;var
      frmf1main: Tfrmf1main;
      modified:boolean;
    implementationuses CxyCommon;{$R *.DFM}
    procedure Tfrmf1main.insertdata(sender: Tobject);
    var Mitem:Tmenuitem;i,j:integer;ss:string;
    begin
      if sender is Tmenuitem then
      begin
        Mitem:=sender as Tmenuitem;
        Mf1book1.GetActiveCell(i,j);
        ss:=copy(mitem.caption,1,pos('(',mitem.caption)-1);
        Mf1book1.EntryRC[i,j]:='#'+ss+'#';
      end;
    end;
    procedure Tfrmf1main.showhint(Sender:TObject);
    begin
    //  statusbar1.Panels[0].text:=application.Hint;
    end;
    procedure Tfrmf1main.N56Click(Sender: TObject);
    begin
    mf1book1.FormatCellsDlg(1);
    end;procedure Tfrmf1main.N60Click(Sender: TObject);
    begin
    if not N60.Checked then
    begin
      Mf1book1.ProtectionDlg;
      N60.checked:=true;
    end
    else
      begin
        Mf1book1.SetProtection(false,false);
        N60.checked:=false;
      end;end;procedure Tfrmf1main.widthautoExecute(Sender: TObject);
    begin
      Mf1book1.SetColWidthAuto(1,1,100,100,false);
    end;procedure Tfrmf1main.sortExecute(Sender: TObject);
    begin
    Mf1book1.SortDlg;
    end;procedure Tfrmf1main.openfileExecute(Sender: TObject);
    begin
      if opendialog1.Execute then
         Mf1book1.ReadEx(opendialog1.filename);
         mf1book1.ShowTabs:=1;
    //     mf1book1.SheetSelected[2]:=true;
    //     Mf1book1.maxrow:=20;
    //     Mf1book1.maxcol:=10;end;procedure Tfrmf1main.saveasExecute(Sender: TObject);
    var filepath:string;
    begin
      if savedialog1.Execute then
      mf1book1.Write(savedialog1.FileName,$0000000B);
    end;procedure Tfrmf1main.mergesellExecute(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_MergeCells(true);
    Mf1book1.SetCellFormat(cheng);end;procedure Tfrmf1main.border1Execute(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_BorderStyle($00000000,$00000002);
    cheng.set_borderstyle($00000001,$00000002);
    cheng.set_borderstyle($00000002,$00000002);
    cheng.set_borderstyle($00000003,$00000002);
    Mf1book1.SetCellFormat(cheng);
    end;procedure Tfrmf1main.border2Execute(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_BorderStyle($FFFFFFFF,$00000001);
    cheng.set_borderstyle($FFFFFFFE,$00000001);
    Mf1book1.SetCellFormat(cheng);
    end;procedure Tfrmf1main.aligncenterExecute(Sender: TObject);
    var cheng:If1cellformat;
    begin
    if not fc then
    begin
    toolbutton18.down:=true;
    toolbutton16.down:=false;
    toolbutton19.down:=false;
    fl:=false;
    fr:=false;
    cheng:=mf1book1.GetCellFormat;
    cheng.AlignHorizontal:=f1haligncenter;
    cheng.alignvertical:=f1valigncenter;
    Mf1book1.SetCellFormat(cheng);
    fc:=true;
    end
    else
    begin
    toolbutton18.down:=false;
    cheng:=mf1book1.GetCellFormat;
    cheng.AlignHorizontal:=f1halignleft;
    cheng.alignvertical:=f1valigncenter;
    Mf1book1.SetCellFormat(cheng);
    fc:=false
    end;
    end;procedure Tfrmf1main.alignleftExecute(Sender: TObject);
    var cheng:If1cellformat;
    begin
    if not fl then
    begin
    toolbutton16.Down:=true;
    cheng:=mf1book1.GetCellFormat;
    cheng.AlignHorizontal:=f1halignleft;
    cheng.alignvertical:=f1valigncenter;
    Mf1book1.SetCellFormat(cheng);
    toolbutton18.down:=false;
    toolbutton19.down:=false;
    fc:=false;
    fr:=false;
    fl:=true;
    end
    else
    begin
    toolbutton16.Down:=false;
    cheng:=mf1book1.GetCellFormat;
    cheng.AlignHorizontal:=f1halignleft;
    cheng.alignvertical:=f1valigncenter;
    Mf1book1.SetCellFormat(cheng);
    fl:=false;
    end;
    end;procedure Tfrmf1main.alingrightExecute(Sender: TObject);
    var cheng:If1cellformat;
    begin
    if not fr then
      

  2.   

    begin
    toolbutton19.down:=true;
    toolbutton16.down:=false;
    toolbutton18.down:=false;
    fl:=false;
    fc:=false;
    cheng:=mf1book1.GetCellFormat;
    cheng.AlignHorizontal:=f1halignright;
    cheng.alignvertical:=f1valigncenter;
    Mf1book1.SetCellFormat(cheng);
    fr:=true;
    end
    else
    begin
    toolbutton19.down:=false;
    cheng:=mf1book1.GetCellFormat;
    cheng.AlignHorizontal:=f1halignleft;
    cheng.alignvertical:=f1valigncenter;
    Mf1book1.SetCellFormat(cheng);
    fr:=false;
    end;
    end;procedure Tfrmf1main.findExecute(Sender: TObject);
    begin
    mf1book1.FindDlg;
    end;procedure Tfrmf1main.findreplaceExecute(Sender: TObject);
    begin
    mf1book1.ReplaceDlg;
    end;procedure Tfrmf1main.gotocellExecute(Sender: TObject);
    begin
    mf1book1.GotoDlg;
    end;procedure Tfrmf1main.setfontExecute(Sender: TObject);
    begin
    Mf1book1.FormatFontDlg;
    end;procedure Tfrmf1main.N57Click(Sender: TObject);
    begin
    mf1book1.RowHeightDlg;
    end;procedure Tfrmf1main.N58Click(Sender: TObject);
    begin
    mf1book1.ColWidthDlg;
    end;procedure Tfrmf1main.N61Click(Sender: TObject);
    begin
    //mf1book1.FormatSheetDlg(2,true)
    end;procedure Tfrmf1main.ToolButton14Click(Sender: TObject);
    begin
    if fu then
    begin
    mf1book1.FontUnderline:=false;
    toolbutton14.Update;
    toolbutton14.down:=false;
    fu:=false;
    end
    else
    begin
    mf1book1.fontunderline:=true;
    toolbutton14.down:=true;
    fu:=true;
    end;
    end;procedure Tfrmf1main.ToolButton15Click(Sender: TObject);
    begin
    if fb then
    begin
    mf1book1.Fontbold:=false;
    toolbutton15.down:=false;
    fb:=false;
    end
    else
    begin
    mf1book1.fontbold:=true;
    toolbutton15.down:=true;
    fb:=true;
    end;
    end;procedure Tfrmf1main.ToolButton29Click(Sender: TObject);
    begin
    if fi then
    begin
    mf1book1.FontItalic:=false;
    toolbutton29.down:=false;
    fi:=false;
    end
    else
    begin
    mf1book1.FontItalic :=true;
    toolbutton29.down:=true;
    fi:=true;
    end;
    end;procedure Tfrmf1main.FormCreate(Sender: TObject);
    begin
    modified:=false;
    application.OnHint:=showhint;
    fu:=false;
    fb:=false;
    fi:=false;
    fl:=false;
    fc:=false;
    fr:=false;
    end;procedure Tfrmf1main.Mf1Book1SelChange(Sender: TObject);
    var cheng:If1cellformat;
    begin  fu:=mf1book1.FontUnderline;
      toolbutton14.down:=mf1book1.FontUnderline;
      fb:=mf1book1.FontBold;
      toolbutton15.Down:=mf1book1.FontBold;
      fi:=mf1book1.FontItalic;
      toolbutton29.Down:=mf1book1.FontItalic;  cheng:=mf1book1.GetCellFormat;  case cheng.AlignHorizontal of
      1:           begin
                     toolbutton16.down:=false;
                     toolbutton18.down:=false;
                     toolbutton19.down:=false;
                     fc:=false;
                     fl:=false;
                     fr:=false;
                   end;
      f1halignleft:begin
                     toolbutton16.down:=true;
                     toolbutton18.down:=false;
                     toolbutton19.down:=false;
                     fc:=false;
                     fr:=false;
                     fl:=true;
                   end;
      f1haligncenter:begin
                       toolbutton18.down:=true;
                       toolbutton16.down:=false;
                       toolbutton19.down:=false;
                       fl:=false;
                       fr:=false;
                       fc:=true;
                     end;
      f1halignright:begin
                      toolbutton19.down:=true;
                      toolbutton16.down:=false;
                      toolbutton18.down:=false;
                      fl:=false;
                      fc:=false;
                      fr:=true;
                    end;
      end;//endcase
    end;procedure Tfrmf1main.previewExecute(Sender: TObject);
    begin
    mf1book1.FilePrintPreview;
    end;procedure Tfrmf1main.printExecute(Sender: TObject);
    begin
    mf1book1.FilePrint(false);
    end;procedure Tfrmf1main.N7Click(Sender: TObject);
    begin
    mf1book1.FilePageSetupDlg;
    end;procedure Tfrmf1main.N67Click(Sender: TObject);
    var i,j:integer;
    begin
    mf1book1.GetActiveCell(i,j);
    Mf1book1.EntryRC[i,j]:='编报单位:#';
    end;procedure Tfrmf1main.N68Click(Sender: TObject);
    var i,j:integer;
    begin
    mf1book1.GetActiveCell(i,j);
    Mf1book1.EntryRC[i,j]:='#年度';end;procedure Tfrmf1main.N69Click(Sender: TObject);
    var i,j:integer;
    begin
    mf1book1.GetActiveCell(i,j);
    Mf1book1.EntryRC[i,j]:='#季度';
    end;procedure Tfrmf1main.N70Click(Sender: TObject);
    var i,j:integer;
    begin
    mf1book1.GetActiveCell(i,j);
    Mf1book1.EntryRC[i,j]:='编号';end;procedure Tfrmf1main.N71Click(Sender: TObject);
    var i,j:integer;
    begin
    mf1book1.GetActiveCell(i,j);
    Mf1book1.EntryRC[i,j]:='单位:#';end;
    procedure insertdatafloat(sender:Tobject);
    beginend;
    procedure Tfrmf1main.FormClose(Sender: TObject; var Action: TCloseAction);
    var filepath:string; i:integer;
    begin
    if modified then
    begin
     i:=application.MessageBox('您没有保存修改过的数据,现在保存吗?','审计台帐管理系统',mb_iconinformation+mb_yesnocancel);
     if i=idyes then
      begin
         if label2.caption='cxy' then
         begin
         filepath:=label1.caption;
         Mf1book1.WriteEx(filepath,$0000000B);
         cxy.filetodatabase(filepath,'sjtz');
         modified:=false;
         end
         else
         begin
         if savedialog1.Execute then
         mf1book1.WriteEx(filepath,$0000000B);
         end;
      end;
      if i=idcancel then
      abort;
    end;
    end;procedure Tfrmf1main.N4Click(Sender: TObject);
    var filepath:string;
    begin
       if label2.caption='cxy' then
       begin
         filepath:=label1.caption;
         Mf1book1.WriteEx(filepath,$0000000B);
         cxy.filetodatabase(filepath,'sjtz');
         modified:=false;
       end
       else
       begin
         if savedialog1.Execute then
         mf1book1.WriteEx(filepath,$0000000B);
       end;
    end;procedure Tfrmf1main.N40Click(Sender: TObject);
    begin
    mf1book1.InsertDlg;
    end;procedure Tfrmf1main.N12Click(Sender: TObject);
    begin
    mf1book1.InsertSheets(1,1);
    end;procedure Tfrmf1main.N73Click(Sender: TObject);
    begin
    mf1book1.ObjCreate($00000005,mf1book1.selstartcol-1,mf1book1.SelStartrow-1,mf1book1.SelEndcol,mf1book1.SelEndrow);
    end;procedure Tfrmf1main.N45Click(Sender: TObject);
    begin
    mf1book1.ObjCreate($00000004,mf1book1.selstartcol-1,mf1book1.SelStartrow-1,mf1book1.SelEndcol,mf1book1.SelEndrow);
    end;procedure Tfrmf1main.N46Click(Sender: TObject);
    begin
    mf1book1.ObjCreate($00000001,mf1book1.selstartcol-1,mf1book1.SelStartrow-1,mf1book1.SelEndcol,mf1book1.SelEndrow);
    end;
      

  3.   


    procedure Tfrmf1main.N47Click(Sender: TObject);
    begin
    mf1book1.ObjCreate($00000003,mf1book1.selstartcol-1,mf1book1.SelStartrow-1,mf1book1.SelEndcol,mf1book1.SelEndrow);
    end;procedure Tfrmf1main.N48Click(Sender: TObject);
    begin
    mf1book1.ObjCreate($00000002,mf1book1.selstartcol-1,mf1book1.SelStartrow-1,mf1book1.SelEndcol,mf1book1.SelEndrow);
    end;procedure Tfrmf1main.N51Click(Sender: TObject);
    var a:longint;
    begin
    //mf1book1.ObjCreate($00000007,mf1book1.selstartcol-1,mf1book1.SelStartrow-1,mf1book1.SelEndcol,mf1book1.SelEndrow);
    mf1book1.ObjNew($00000007,mf1book1.selstartcol-1,mf1book1.SelStartrow-1,mf1book1.SelEndcol,mf1book1.SelEndrow,a);
    end;procedure Tfrmf1main.N52Click(Sender: TObject);
    begin
    mf1book1.ObjCreate($0000000A,mf1book1.selstartcol-1,mf1book1.SelStartrow-1,mf1book1.SelEndcol,mf1book1.SelEndrow);
    end;procedure Tfrmf1main.N53Click(Sender: TObject);
    begin
    mf1book1.ObjCreate($00000009,mf1book1.selstartcol-1,mf1book1.SelStartrow-1,mf1book1.SelEndcol,mf1book1.SelEndrow);
    end;procedure Tfrmf1main.N31Click(Sender: TObject);
    begin
    mf1book1.EditClear(1);
    end;procedure Tfrmf1main.N32Click(Sender: TObject);
    begin
    mf1book1.EditClear(2);
    end;procedure Tfrmf1main.N33Click(Sender: TObject);
    begin
    mf1book1.EditClear(3);
    end;procedure Tfrmf1main.N34Click(Sender: TObject);
    begin
    mf1book1.DeleteDlg;
    end;procedure Tfrmf1main.ToolButton36Click(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_BorderStyle($00000003,$00000002);
    Mf1book1.SetCellFormat(cheng);
    end;procedure Tfrmf1main.ToolButton35Click(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_BorderStyle($00000001,$00000002);
    Mf1book1.SetCellFormat(cheng);
    end;procedure Tfrmf1main.ToolButton37Click(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_BorderStyle($00000000,$00000002);
    Mf1book1.SetCellFormat(cheng);
    end;procedure Tfrmf1main.ToolButton38Click(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_BorderStyle($00000002,$00000002);
    Mf1book1.SetCellFormat(cheng);
    end;procedure Tfrmf1main.ToolButton34Click(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_BorderStyle($00000000,$00000000);
    cheng.set_borderstyle($00000001,$00000000);
    cheng.set_borderstyle($00000002,$00000000);
    cheng.set_borderstyle($00000003,$00000000);
    cheng.Set_BorderStyle($FFFFFFFF,$00000000);
    cheng.set_borderstyle($FFFFFFFE,$00000000);
    Mf1book1.SetCellFormat(cheng);
    end;procedure Tfrmf1main.N74Click(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_BorderStyle($00000000,$00000002);
    cheng.set_borderstyle($00000001,$00000002);
    cheng.set_borderstyle($00000002,$00000002);
    cheng.set_borderstyle($00000003,$00000002);
    Mf1book1.SetCellFormat(cheng);
    end;procedure Tfrmf1main.N80Click(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_BorderStyle($00000000,$00000000);
    cheng.set_borderstyle($00000001,$00000000);
    cheng.set_borderstyle($00000002,$00000000);
    cheng.set_borderstyle($00000003,$00000000);
    cheng.Set_BorderStyle($FFFFFFFF,$00000000);
    cheng.set_borderstyle($FFFFFFFE,$00000000);
    Mf1book1.SetCellFormat(cheng);
    end;procedure Tfrmf1main.N79Click(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_BorderStyle($00000002,$00000002);
    Mf1book1.SetCellFormat(cheng);
    end;procedure Tfrmf1main.N78Click(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_BorderStyle($00000003,$00000002);
    Mf1book1.SetCellFormat(cheng);
    end;procedure Tfrmf1main.N77Click(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_BorderStyle($00000001,$00000002);
    Mf1book1.SetCellFormat(cheng);
    end;procedure Tfrmf1main.N76Click(Sender: TObject);
    var cheng:If1cellformat;
    begin
    cheng:=mf1book1.GetCellFormat;
    cheng.Set_BorderStyle($00000000,$00000002);
    Mf1book1.SetCellFormat(cheng);
    end;end.