📄 main.pas
字号:
unit main;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, OleCtrls, jpeg, ExtCtrls, Buttons,
DBCtrls, StdCtrls, DB, DBTables, ADODB;
type
Tmain_f = class(TForm)
GB_intro: TGroupBox;
Memo1: TMemo;
GB_login: TGroupBox;
Label3: TLabel;
Label4: TLabel;
i_user: TEdit;
i_passwd: TEdit;
B_login: TButton;
GB_logined: TGroupBox;
o_authority: TDBRadioGroup;
Panel1: TPanel;
sb_logout: TSpeedButton;
sb_zdy: TSpeedButton;
sb_yhgl: TSpeedButton;
sb_login: TSpeedButton;
Image1: TImage;
sb_zdsl: TSpeedButton;
sb_system: TSpeedButton;
SpeedButton1: TSpeedButton;
procedure FormShow(Sender: TObject);
procedure sb_logoutClick(Sender: TObject);
procedure B_loginClick(Sender: TObject);
procedure SB_loginClick(Sender: TObject);
procedure sb_yhglClick(Sender: TObject);
procedure sb_zdslClick(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure sb_systemClick(Sender: TObject);
procedure sb_zdyClick(Sender: TObject);
private
procedure ShowPanel(PanelID:SmallInt);
procedure SetSB;
public
{ Public declarations }
end;
var
main_f: Tmain_f;
implementation
uses u_zdsl, u_xtwh,u_zdy, u_user,u_dm;
{$R *.dfm} // 信息提示界面显示
procedure Tmain_f.ShowPanel(PanelID:SmallInt);
begin
GB_intro.Visible:=False;
GB_login.Visible:=False;
GB_logined.Visible:=False;
case PanelID of
0: GB_intro.Visible:=True;
1: GB_login.Visible:=True;
2: GB_logined.Visible:=True;
end;
end;
//设置主界面可用模块
procedure Tmain_f.SetSB;
begin
SB_login.Enabled:=(o_authority.ItemIndex<0);
SB_logout.Enabled:=(o_authority.ItemIndex>=0);
SB_zdy.Enabled:=(o_authority.ItemIndex>=0);
SB_yhgl.Enabled:=(o_authority.ItemIndex>=1);
SB_zdsl.Enabled:=(o_authority.ItemIndex>=0);
SB_system.Enabled:=(o_authority.ItemIndex>=1);
end;
procedure Tmain_f.FormShow(Sender: TObject);
begin
showpanel(0);
setsb;
end;
procedure Tmain_f.SB_loginClick(Sender: TObject);//登陆
begin
showpanel(1);
end;
procedure Tmain_f.sb_logoutClick(Sender: TObject); //注销
begin
showpanel(1);
SB_login.Enabled:=true;
SB_logout.Enabled:=false;
SB_zdy.Enabled:=false;
SB_yhgl.Enabled:=false;
SB_zdsl.Enabled:=false;
SB_system.Enabled:=false;
i_passwd.Text:='';
end;
procedure Tmain_f.B_loginClick(Sender: TObject);//验证登陆
var
s1,s2,s3:string;
n:integer;
begin
if length(i_user.text)=0 then
begin
showmessage('请输入用户名');
if length(i_passwd.text)=0 then
showmessage('请输入密码')
end
else
begin
if length(i_passwd.text)=0 then
showmessage('请输入密码')
else
s1:=i_user.text;
s3:=i_passwd.text;
dm.user.open;
dm.user.first;
while not dm.user.eof do
begin
//读取erdb库中的用户名
s2:=dm.user.fieldbyname('id').asstring;
n:=comparestr(s1,s2); //匹配
if n=0 then break;
dm.user.next;
end;
if not dm.user.Eof then
begin
if s3=dm.user.fieldbyname('passwd').asstring then
begin
ShowPanel(2);
SetSB; //按照登陆用户的权限显示界面
end
else
showmessage('密码错误')
end
else
showmessage('用户名不存在');
end;
end;
procedure Tmain_f.sb_yhglClick(Sender: TObject);
begin
if not assigned( user_f) then
begin
application.CreateForm(tuser_f, user_f);
try
user_f.Showmodal;
finally
user_f.Free;
user_f:=nil;
end;
end
else
user_f.Showmodal;
end;
procedure Tmain_f.sb_zdslClick(Sender: TObject);
begin
if not assigned(fzdsl) then
begin
application.CreateForm(tfzdsl,fzdsl);
try
fzdsl.Showmodal;
finally
fzdsl.Free;
fzdsl:=nil;
end;
end
else
fzdsl.Showmodal;
end;
procedure Tmain_f.SpeedButton1Click(Sender: TObject);
begin
close;
end;
procedure Tmain_f.sb_systemClick(Sender: TObject);
begin
if not assigned(xtwh) then
begin
application.CreateForm(txtwh,xtwh);
try
xtwh.Showmodal;
finally
xtwh.Free;
xtwh:=nil;
end;
end
else
xtwh.Showmodal;
end;
procedure Tmain_f.sb_zdyClick(Sender: TObject);
begin
if not assigned(zdy) then
begin
application.CreateForm(tzdy,zdy);
try
zdy.Showmodal;
finally
zdy.Free;
zdy:=nil;
end;
end
else
zdy.Showmodal;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -