📄 mainunit.pas
字号:
unit MainUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, ToolWin, ImgList, Menus,EditListunit,
ModeUnit, dataunit, browunit, barunit, viewunit, SearchUnit, MovUnit,Starunit,
EditDWunit, printers, Aboutunit, FR_Class, FR_DSet, FR_DBSet;
type
TMainForm = class(TForm)
MainMenu1: TMainMenu;
dd1: TMenuItem;
dd2: TMenuItem;
dd3: TMenuItem;
dd4: TMenuItem;
ToolBar1: TToolBar;
ViewBtn: TToolButton;
BrowBtn: TToolButton;
AddBtn: TToolButton;
SubBtn: TToolButton;
Movbtn: TToolButton;
HImg: TImageList;
DImg: TImageList;
NImg: TImageList;
EditBtn: TToolButton;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
SearchBtn: TToolButton;
T1: TMenuItem;
S1: TMenuItem;
N1: TMenuItem;
X1: TMenuItem;
P1: TMenuItem;
A1: TMenuItem;
D1: TMenuItem;
E1: TMenuItem;
M1: TMenuItem;
P2: TMenuItem;
P3: TMenuItem;
O1: TMenuItem;
D2: TMenuItem;
L1: TMenuItem;
H1: TMenuItem;
H2: TMenuItem;
N2: TMenuItem;
A2: TMenuItem;
S2: TMenuItem;
PrinterSetupDialog1: TPrinterSetupDialog;
S3: TMenuItem;
C1: TMenuItem;
E2: TMenuItem;
Z1: TMenuItem;
N4: TMenuItem;
Y1: TMenuItem;
T2: TMenuItem;
S4: TMenuItem;
N5: TMenuItem;
A3: TMenuItem;
frDBDataSet1: TfrDBDataSet;
frReport1: TfrReport;
Z2: TMenuItem;
N3: TMenuItem;
Y2: TMenuItem;
X2: TMenuItem;
J1: TMenuItem;
ToolButton3: TToolButton;
PrintBtn: TToolButton;
HelpBtn: TToolButton;
MenuImg: TImageList;
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ViewBtnClick(Sender: TObject);
procedure BrowBtnClick(Sender: TObject);
procedure EditBtnClick(Sender: TObject);
procedure AddBtnClick(Sender: TObject);
procedure SubBtnClick(Sender: TObject);
procedure SearchBtnClick(Sender: TObject);
procedure MovbtnClick(Sender: TObject);
procedure dd2Click(Sender: TObject);
procedure dd3Click(Sender: TObject);
procedure dd4Click(Sender: TObject);
procedure T1Click(Sender: TObject);
procedure S1Click(Sender: TObject);
procedure X1Click(Sender: TObject);
procedure L1Click(Sender: TObject);
procedure D2Click(Sender: TObject);
procedure H2Click(Sender: TObject);
procedure S2Click(Sender: TObject);
procedure A2Click(Sender: TObject);
procedure Z1Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure Y1Click(Sender: TObject);
procedure T2Click(Sender: TObject);
procedure S4Click(Sender: TObject);
procedure A3Click(Sender: TObject);
procedure Z2Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure Y2Click(Sender: TObject);
procedure X2Click(Sender: TObject);
procedure J1Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure HelpBtnClick(Sender: TObject);
private
{ Private declarations }
procedure WMGETMINMAXINFO(var msg:TWMGetMinMaxInfo);
Message WM_GETMINMAXINFO;
procedure EmptyData(LB:string);
public
{ Public declarations }
end;
const
MAXHEIGHT=93;
BARFORMWIDTH=200;
var
MainForm: TMainForm;
filepath : string;
implementation
{$R *.dfm}
procedure tmainform.EmptyData(LB:string);
var
WhereStr : string;
begin
if LB <> '' then
wherestr := 'where zt=:zt'
else
wherestr := '';
with dataform.CMD do
begin
commandtext := 'delete form main '+ wherestr;
if parameters.Count > 0 then
parameters.ParamByName('zt').Value := LB;
execute;
end; // with
end;
procedure Tmainform.WMGETMINMAXINFO(var msg:TWMGetMinMaxInfo);
var
r : Trect;
begin
systemparametersinfo(SPI_GETWORKAREA,0,@r,0); {取得工作区坐标}
with msg.MinMaxInfo^ do
begin
PtmaxSize.X := r.Right - r.Left; {最大化时的宽度}
PtMaxSize.Y := MAXHEIGHT; {最大化时的高度}
PtMaxposition.x := R.Left; {最大化时左上角的横坐标}
PtMaxPosition.Y := R.TOP; {最大化时左上角的纵坐标}
end; // with
msg.Result := 0; {返回消息}
inherited;
end;
procedure TMainForm.FormShow(Sender: TObject);
var
R:TRECT;
begin
systemparametersinfo(SPI_GETWORKAREA,0,@R,0); //获得工作区大小
//设置主窗口位置
TOP := r.Top;
left := r.Left;
width := r.Right - r.Left;
height := MAXHEIGHT;
//设置BARFORM状态
with barform do
begin
left := r.Left;
top := mainform.BoundsRect.Bottom;
width := barformwidth;
height := r.Bottom - MAXHEIGHT;
show;
end; // with
browform.Show;
with viewform do
begin
left := browform.Left + 100;
top := browform.Top + 100;
SetPages(viewform.MainPage,false);
show;
end; // with
end;
procedure TMainForm.FormCreate(Sender: TObject);
begin
filepath := extractfilepath(paramstr(0));
end;
procedure TMainForm.ViewBtnClick(Sender: TObject);
begin
viewform.SetPages(viewform.MainPage,false);
if viewbtn.Down then
begin
viewform.Show;
viewform.Tag := 1;
end
else
viewform.Hide;
case barform.Tag of //
0: viewform.ZZView;
1: viewform.NTview;
2: viewform.TYView;
3: viewform.TXView;
4: viewform.JSView;
end; // case
end;
procedure TMainForm.BrowBtnClick(Sender: TObject);
begin
viewform.SetPages(viewform.MainPage,false);
if browbtn.Down then
browform.show
else
browform.hide;
end;
procedure TMainForm.EditBtnClick(Sender: TObject);
begin
if viewform.Tag = 1 then
begin
viewform.SetPages(viewform.MainPage,true);
viewform.Tag := 2;
viewform.Show;
end
else
begin
messagebox(application.Handle,'记录不在浏览状态不能修改记录!','提示',MB_OK+MB_ICONQUESTION);
end;
end;
procedure TMainForm.AddBtnClick(Sender: TObject);
begin
if viewform.Tag = 1 then
begin
viewform.Tag := 3;
viewform.EmptyEdit;
viewform.SetPages(viewform.MainPage,true);
viewform.Show;
end
else
begin
messagebox(application.Handle,'记录不在浏览状态不能添加记录!','提示',MB_OK+MB_ICONQUESTION);
end;
end;
procedure TMainForm.SubBtnClick(Sender: TObject);
var
mainid:integer;
begin
if viewform.Tag = 1 then
begin
case barform.Tag of //
0: begin //zz active
if messagebox(0,pchar('真的要删除在职职工'+dataform.ZZquy.Fields.fieldbyname('name').AsString+'吗?'),'提示',MB_OKCANCEL+MB_ICONQUESTION) = IDOK then
begin
mainid:= dataform.ZZquy.Fields.fieldbyname('main_id').AsInteger;
barform.DelNode(barform.ZZTree,mainid);
viewform.DelRecord(dataform.ZZquy,mainid);
end;
end;
1: begin //nt active
if messagebox(0,pchar('真的要删除内退职工'+dataform.NTquy.Fields.fieldbyname('name').AsString+'吗?'),'提示',MB_OKCANCEL+MB_ICONQUESTION) = IDOK then
begin
mainid:= dataform.ntquy.Fields.fieldbyname('main_id').AsInteger;
barform.DelNode(barform.ntTree,mainid);
viewform.DelRecord(dataform.ntquy,mainid);
end;
end;
2: begin //ty active
if messagebox(0,pchar('真的要删除退养职工'+dataform.tyquy.Fields.fieldbyname('name').AsString+'吗?'),'提示',MB_OKCANCEL+MB_ICONQUESTION) = IDOK then
begin
mainid:= dataform.tyquy.Fields.fieldbyname('main_id').AsInteger;
barform.DelNode(barform.tyTree,mainid);
viewform.DelRecord(dataform.tyquy,mainid);
end;
end;
3: begin //tx active
if messagebox(0,pchar('真的要删除退休职工'+dataform.txquy.Fields.fieldbyname('name').AsString+'吗?'),'提示',MB_OKCANCEL+MB_ICONQUESTION) = IDOK then
begin
mainid:= dataform.txquy.Fields.fieldbyname('main_id').AsInteger;
barform.DelNode(barform.txTree,mainid);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -