📄 worker.pas
字号:
unit Worker;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, ToolWin,ExtCtrls,buttons, ADODB, ImgList,
MyComboBox;
type
TWorkerForm = class(TForm)
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
Panel1: TPanel;
Label5: TLabel;
Edit3: TEdit;
Label2: TLabel;
Edit4: TEdit;
Label3: TLabel;
Label4: TLabel;
GroupBox1: TGroupBox;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
CheckBox4: TCheckBox;
CheckBox5: TCheckBox;
CheckBox6: TCheckBox;
ComboBox2: TComboBox;
Label1: TLabel;
Edit1: TEdit;
Label6: TLabel;
Edit2: TEdit;
SpeedButton5: TSpeedButton;
ComboBox1: TMyComboBox;
procedure CreateParams(var Params: TCreateParams); override;
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Customshowfield(const field,str:string);
procedure showfield;
procedure ComboBox2KeyPress(Sender: TObject; var Key: Char);
procedure ComboBox11Select(Sender: TObject);
procedure ComboBox11KeyPress(Sender: TObject; var Key: Char);
procedure ComboBox2Change(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
function IDcreate:string;
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure CheckBox6Click(Sender: TObject);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure Edit4KeyPress(Sender: TObject; var Key: Char);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
private
procedure WMPAINT1(var msg:TMESSAGE);message WM_PAINT;
procedure WMNCPAINT1(var msg:TWMNCPAINT);message WM_NCPAINT;
procedure Active(var msg:Tmessage);message WM_ACTIVATE;
procedure WMNCLBUTTONDBLCLK1(var msg:Tmessage);message WM_NCLBUTTONDBLCLK;
{ Private declarations }
public
titleBmp:Tbitmap;
username:String;
{ Public declarations }
end;
var
WorkerForm:TWorkerForm;
function UserManagershow:boolean;
implementation
uses MainForm,DataModule;
{$R *.dfm}
function MyShowmessage(text:Pchar):boolean; external 'resource.dll';
procedure TWorkerForm.WMNCLBUTTONDBLCLK1(var msg:Tmessage);
begin
//
end;
procedure TWorkerForm.Active(var msg:Tmessage);
begin
self.WMPAINT1(msg);
end;
procedure TWorkerForm.CreateParams(var Params: TCreateParams);
begin
inherited;
params.Style:=params.Style-WS_SYSMENU;
end;
procedure TWorkerForm.WMPAINT1(var msg:TMESSAGE);
begin
sendmessage(self.Handle,WM_NCPAINT,0,0);
inherited;
end;
procedure TWorkerForm.WMNCPAINT1(var msg:TWMNCPAINT);
var
dc1:HDC;
y,frame:integer;
oldbrush:HBrush;
oldpen,pen:HPEN;
canvas:Tcanvas;
begin
canvas:=Tcanvas.Create;
dc1:=getwindowdc(Handle);
y:=GetSystemMetrics(SM_CYSIZE);
frame:=GetSystemMetrics(SM_CYSIZEFRAME);
oldbrush:=selectobject(dc1,getstockobject(null_brush));
pen:=createpen(PS_SOLID,1,rgb(155,155,155));
oldpen:=selectobject(dc1,pen);
RoundRect(dc1,0,0,Width,Height,12,12);
pen:=createpen(PS_SOLID,frame*2-5,rgb(255,255,255));
selectobject(dc1,pen);
RoundRect(dc1,2,2,Width-2,Height-2,8,10);
StretchBlt(dc1,frame,frame,Width-2*frame,y+frame div 2,titlebmp.Canvas.Handle,0,0,titlebmp.Width,titlebmp.Height,srccopy);
canvas.Handle:=dc1;
canvas.Brush.Style:=bsclear;
canvas.TextOut(frame*3,(y-frame)div 2,self.Caption);
selectobject(dc1,oldbrush);
selectobject(dc1,oldpen);
deleteObject(pen);
canvas.Handle:=0;
canvas.Free;
releasedc(Handle,dc1);
end;
procedure TWorkerForm.FormCreate(Sender: TObject);
begin
titlebmp:=Tbitmap.Create;
titlebmp.LoadFromResourceName(main.resource,'TItle');
end;
procedure TWorkerForm.FormShow(Sender: TObject);
begin
combobox1.Clear;
combobox2.Clear;
with data.PublicQuery do
begin
close;
sql.Clear;
sql.Add('select distinct * from Worker,userpower where WOrker.username=Userpower.Username');
open;
while not Eof do
begin
combobox1.Items.Add(fieldbyname('username').AsString);
combobox2.Items.Add(fieldbyname('ID').AsString);
next;
end;
first;
end;
combobox2.Enabled:=true;
label1.Visible:=false;
label6.Visible:=false;
edit1.Visible:=false;
edit2.Visible:=false;
edit3.Enabled:=false;
edit4.Enabled:=false;
speedbutton1.Enabled:=true;
speedbutton3.Enabled:=true;
speedbutton5.Enabled:=true;
speedbutton4.Caption:='&X退出';
showfield;
end;
procedure TWorkerForm.showfield;
begin
with data.PublicQuery do
begin
username:=fieldbyname('username').AsString;
combobox1.Text:=fieldbyname('username').AsString;
combobox2.Text:=fieldbyname('ID').AsString;
Edit3.Text:=fieldbyname('Name').AsString;
Edit4.Text:=fieldbyname('personID').AsString;
if fieldbyname('Base').AsInteger = 1 then
begin
checkbox1.Checked:=true;
end
else
checkbox1.Checked:=false;
if fieldbyname('InManage').AsInteger= 1 then
begin
checkbox2.Checked:=true;
end
else
checkbox2.Checked:=false;
if fieldbyname('Lendandsell').AsInteger= 1 then
begin
checkbox3.Checked:=true;
end
else
checkbox3.Checked:=false;
if fieldbyname('analyze').AsInteger= 1 then
begin
checkbox4.Checked:=true;
end
else
checkbox4.Checked:=false;
if fieldbyname('system').AsInteger= 1 then
begin
checkbox5.Checked:=true;
end
else
checkbox5.Checked:=false;
if fieldbyname('supervisor').AsInteger= 1 then
begin
checkbox6.Checked:=true;
end
else
checkbox6.Checked:=false;
end;
end;
procedure TWorkerForm.Customshowfield(const field,str:string);
begin
with data.PublicQuery do
begin
close;
sql.Clear;
sql.Add('select * from worker,userpower where worker.'+field+'=:value and WOrker.username=Userpower.Username');
parameters.ParamByName('value').Value:=str;
open;
if recordcount <1 then
begin
myshowmessage('对不起!没有找到您所输入的纪录!');
end;
end;
showfield;
end;
function UserManagershow:boolean;
begin
result:=false;
try
workerform:=TWorkerForm.Create(application);
workerform.ShowModal;
finally
workerform.Free;
end;
result:=true;
end;
procedure TWorkerForm.ComboBox2KeyPress(Sender: TObject; var Key: Char);
begin
key:=#0;
end;
procedure TWorkerForm.ComboBox11Select(Sender: TObject);
begin
if (trim(combobox1.Text) <> '')and (speedbutton3.Enabled)and(speedbutton1.Enabled)then
customshowfield('username',combobox1.Text);
end;
procedure TWorkerForm.ComboBox11KeyPress(Sender: TObject; var Key: Char);
begin
{if (trim(sender as Tmycombobox).Text) <> '') and (key=#13)and (speedbutton3.enabled)and(speedbutton1.enabled) then
begin
customshowfield('username',combobox1.Text);
edit3.SetFocus;
end; }
if speedbutton3.Enabled then
if (trim((sender as Tmycombobox).Text) <> '') and (key=#13)and (speedbutton3.enabled)and(speedbutton1.enabled) then
begin
if not (sender as Tmycombobox).DroppedDown then
customshowfield('username',(sender as Tmycombobox).Text);
if edit3.Enabled then
edit3.SetFocus;
end
else
(sender as Tmycombobox).DroppedDown:=true;
end;
procedure TWorkerForm.ComboBox2Change(Sender: TObject);
begin
if (trim(combobox1.Text) <> '') then
customshowfield('ID',combobox2.Text);
end;
procedure TWorkerForm.SpeedButton4Click(Sender: TObject);
begin
if speedbutton3.Enabled and speedbutton1.Enabled then
begin
data.PublicQuery.Close;
close;
end;
formshow(self);
speedbutton4.Caption:='&X退出';
end;
function TWorkerForm.IDcreate:string;
var
i:integer;
begin
with data.PublicQuery do
begin
result:='0001';
close;
sql.Clear;
sql.Add('select ID from Worker order by ID');
open;
for i:=1 to 9999 do
begin //for
while not eof do
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -