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

📄 statemploye.pas

📁 delphi renyuanguanlixinxioxitong
💻 PAS
字号:
unit StatEmploye;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, QueryModul, DB, ADODB, Grids, DBGrids, ExtCtrls, ComCtrls,
  ToolWin, StdCtrls, TeeProcs, TeEngine, Chart, DbChart, DBCtrls, Series;

type
  TfrmStatEmployee = class(TfrmQueryModul)
    Label2: TLabel;
    aqryQueryPOSTNAME: TWideStringField;
    aqryQueryPOSTCOUNT: TBCDField;
    aqryQueryPOSTNO: TWideStringField;
    Chart1: TChart;
    lboxStat: TListBox;
    Series1: TBarSeries;
    Series2: TPieSeries;
    Series3: TLineSeries;
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
  protected
    //以下定义的是虚函数,该虚函数在父类定义了,但是
    //没有实现过程,它们即将在本单元实现
    function funQuery()  :integer; override;
    function funSelect() :integer; override;
    function funView()   :integer; override;
    function funExit()   :integer; override;
  public
    { Public declarations }
  end;

var
  frmStatEmployee: TfrmStatEmployee;
  //供外界访问该表单的接口函数
  function gfunOpenStatEmployee() :integer;
implementation

{$R *.dfm}
//供外界访问该表单的接口函数
function gfunOpenStatEmployee() :integer;
begin
  frmStatEmployee :=TfrmStatEmployee.Create(nil);
  frmStatEmployee.ShowModal ;
  Result :=0;
  frmStatEmployee.Close;
end;
//查询函数
function TfrmStatEmployee.funQuery() :integer;
begin
  if lboxStat.ItemIndex = 0 then       //直方图显示
  begin
    Series1.Active := true;
    Series2.Active := false;
    Series3.Active := false;
    Chart1.Title.Text.Clear ;
    Chart1.Title.Text.Add('直方图显示');
  end;
  if lboxStat.ItemIndex = 1 then       //饼图显示
  begin
    Series1.Active := false;
    Series2.Active := true;
    Series3.Active := false;
    Chart1.Title.Text.Clear ;
    Chart1.Title.Text.Add('饼图显示');
  end;
  if lboxStat.ItemIndex = 2 then       //线图显示
  begin
    Series1.Active := false;
    Series2.Active := false;
    Series3.Active := true;
    Chart1.Title.Text.Clear ;
    Chart1.Title.Text.Add('线图显示');
  end;
   Result :=0;
end;
//选择函数
function TfrmStatEmployee.funSelect() :integer;
begin
   Result :=0;
end;
//预览函数
function TfrmStatEmployee.funView() :integer;
begin
  Result :=0;
end;
//退出函数
function TfrmStatEmployee.funExit() :integer;
begin
   close; 
   Result :=0;
end;
// 表单的打开
procedure TfrmStatEmployee.FormShow(Sender: TObject);
var
 nCount :integer;    //员工岗位人数
 i :integer;         //横坐标
 sPostName :String;  //岗位名称
begin
  inherited;
  lboxStat.ItemIndex := 0;
  if aqryQuery.Active then aqryQuery.Close ;
  try
    aqryQuery.Open ;
    Series1.Clear;      //图形清空
    Series2.Clear;      //图形清空
    Series3.Clear;      //图形清空
    aqryQuery.First ;
    while not aqryQuery.Eof do
    begin
      i :=i+1;
      //获得岗位名称
      sPostName := trim(aqryQuery.FieldByName('PostName').AsString);
      nCount := aqryQuery.FieldByName('PostCount').Value ; //获得岗位人数
      //将岗位名称和人数添加到三个统计图中
      Series1.AddXY(i,nCount,sPostName,clTeeColor) ;
      Series2.AddXY(i,nCount,sPostName,clTeeColor) ;
      Series3.AddXY(i,nCount,sPostName,clTeeColor) ;
      aqryQuery.Next ;
    end;
    Series1.Active := true;
    Series2.Active := false;
    Series3.Active := false;
    Chart1.Title.Text.Clear ;
    Chart1.Title.Text.Add('直方图显示');
  except
    aqryQuery.Cancel ;
    application.MessageBox('打开查询员工出错','错误');
    close;
  end; 
end;

end.

⌨️ 快捷键说明

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