⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 u_bb_xfhz.~pas

📁 这是一个非常使用的DELPHI源码的例子,用的是SQL数据库和DELPHI企业版
💻 ~PAS
字号:
unit U_bb_xfHz;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, ExtCtrls, ToolWin, StdCtrls, ImgList, ActnList,
  XPStyleActnCtrls, ActnMan, Grids, DBGrids,u_public_define, DBCtrls, Mask,
  Excel2000, OleServer;

type
  TFrm_Bb_xfHz = class(TForm)
    Tbar: TToolBar;
    ToolButton16: TToolButton;
    ToolButton15: TToolButton;
    ToolButton8: TToolButton;
    ToolButton17: TToolButton;
    ToolButton18: TToolButton;
    P2: TPanel;
    Label2: TLabel;
    Lvw_lb: TListView;
    ImageList1: TImageList;
    ActionManager1: TActionManager;
    Excel: TAction;
    Exit1: TAction;
    ToolButton1: TToolButton;
    ToolButton2: TToolButton;
    Action1: TAction;
    ExcelApplication1: TExcelApplication;
    ExcelChart1: TExcelChart;
    ExcelWorksheet1: TExcelWorksheet;
    ExcelWorkbook1: TExcelWorkbook;
    procedure Size_Tz();
    procedure FormResize(Sender: TObject);
    procedure Exit1Execute(Sender: TObject);
    procedure Lvw_LbCellClick(Column: TColumn);
    procedure  enable_ctrl(bb:boolean);
    procedure ExcelExecute(Sender: TObject);
    procedure Action1Execute(Sender: TObject);  //锁定控件
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Frm_Bb_xfHz: TFrm_Bb_xfHz;

implementation
  uses u_zjkgl_zjkgl_grzj,u_data,u_data_update,u_zhgl_zhgl_qtzj,U_Bb_Zjk_Zjkmx,
       u_bb_xf_xfcz;
 var
    mbMoving:Boolean ;
 
{$R *.dfm}

procedure TFrm_Bb_xfHz.Size_Tz();
  begin

    lvw_lb.Left:=5;
    lvw_lb.Width:=self.Width-18;
    p2.Left:=lvw_lb.Left;
    p2.Width:=lvw_lb.Width;

  //设置 Top 属性
    if tbar.Visible then
      begin
        Lvw_Lb.Top :=tbar.Height+p2.Height+5;
      end
    else
      begin
        lvw_lb.Top:=p2.Height+5;
      end;

   //设置 height 属性
   lvw_lb.Height := self.Height- (p2.Top + p2.Height) - 40;
  //
  end;
procedure TFrm_Bb_xfHz.FormResize(Sender: TObject);
begin
     Size_Tz();
      frm_bb_xf_xfcz:=Tfrm_bb_xf_xfcz.Create(application);
      frm_bb_xf_xfcz.ShowModal;
end;

procedure TFrm_Bb_xfHz.Exit1Execute(Sender: TObject);
begin
  close;
//
end;

procedure TFrm_Bb_xfHz.Lvw_LbCellClick(Column: TColumn);
begin
 // g_str_selectkh:=dbedit2.Text;
 // g_str_selectbh:=dbedit1.Text;
 // enable_ctrl(true);
end;
procedure TFrm_Bb_xfHz.enable_ctrl(bb:boolean);
var aa:string;
begin
  //
  end;
procedure TFrm_Bb_xfHz.ExcelExecute(Sender: TObject);
 var i,j,k:integer;
        DataCount,HeadCount:integer;
        Bt:array[1..30] of string;
begin

    begin
    //判断有无数据,如果没数据不能输出
     i:=lvw_lb.Items.Count;
      if i=0 then
        begin
           application.MessageBox('无记录不能打印!','明日科技');
           exit;
        end;
        //判断有无Excel安装
    try

       excelapplication1.Connect;
     except
        application.MessageBox('机器没有正确安装Excel!','明日科技有限公司');
        exit;
    end;
    //建立连接,进行命名
     excelapplication1.Visible[1]:=true;
     excelapplication1.Caption:=self.Caption;
     excelapplication1.Workbooks.Add(null,0);
     excelapplication1.Workbooks.Add(emptyparam,0);
     excelworkbook1.ConnectTo(excelapplication1.Workbooks[1]);
     excelworksheet1.ConnectTo(excelworkbook1.Worksheets[1] as _Worksheet);
    //打印表头
       headcount:=lvw_lb.Columns.Count;
       for i:=1 to headcount   do
         begin
           Bt[i]:=lvw_lb.Columns.Items[i-1].Caption;
         end;

     for k:=1 to headcount do
       begin
         excelworksheet1.Cells.Item[1,k]:=Bt[k];
       end;
       //打印数据
     datacount:=lvw_lb.Items.Count;
      for j:= 1 to datacount do
         begin
             for k:=0 to  headcount-1 do
                begin
                 if k=0 then
                   begin
                     excelworksheet1.Cells.Item[j+1,k+1]:=lvw_lb.Items[j].Caption;
                   end
                 else
                   begin
                     excelworksheet1.Cells.Item[j+1,k+1]:=lvw_lb.Items[j].SubItems[k+1];
                   end;
                end;
         end;
     excelapplication1.Disconnect;

   //  application.MessageBox('报表导出成功','明日科技');
    end;

 end;

procedure TFrm_Bb_xfHz.Action1Execute(Sender: TObject);
begin
frm_bb_xf_xfcz:=Tfrm_bb_xf_xfcz.Create(application);
      frm_bb_xf_xfcz.ShowModal;
end;

end.

⌨️ 快捷键说明

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