📄 statemploye.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 + -