to XiaoLaohu:你说的DFM源码是不是这个 好象没什么问题 碰到鬼了 unit Uroot;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ToolWin, ComCtrls, Menus, Buttons, ImgList, StdCtrls, jpeg, ExtCtrls;type Tfrmroot = class(TForm) Menu: TMainMenu; ToolBar1: TToolBar; N1: TMenuItem; mmChange: TMenuItem; mmExit: TMenuItem; N4: TMenuItem; mmauthority: TMenuItem; mmStuinfo: TMenuItem; mmMark: TMenuItem; mmCM: TMenuItem; N9: TMenuItem; mmStuS: TMenuItem; mmMs: TMenuItem; N12: TMenuItem; mmHelp: TMenuItem; mmAbout: TMenuItem; spbtn1: TSpeedButton; spbtn2: TSpeedButton; spbtn3: TSpeedButton; spbtn4: TSpeedButton; spbtn5: TSpeedButton; ToolButton1: TToolButton; spbtn6: TSpeedButton; spbtn7: TSpeedButton; spbtn8: TSpeedButton; spbtn9: TSpeedButton; sbmain: TStatusBar; mmMarkInsert: TMenuItem; mmMarkSearch: TMenuItem; mmIns: TMenuItem; ToolButton2: TToolButton; imglist: TImageList; procedure FormCreate(Sender: TObject); procedure spbtn1Click(Sender: TObject); procedure spbtn2Click(Sender: TObject); procedure spbtn3Click(Sender: TObject); procedure spbtn4Click(Sender: TObject); procedure spbtn5Click(Sender: TObject); procedure spbtn8Click(Sender: TObject); procedure spbtn9Click(Sender: TObject); procedure setauthority; procedure mmauthorityClick(Sender: TObject); procedure mmStuinfoClick(Sender: TObject); procedure mmCMClick(Sender: TObject); procedure mmStuSClick(Sender: TObject); procedure mmMsClick(Sender: TObject); procedure mmMarkInsertClick(Sender: TObject); procedure mmMarkSearchClick(Sender: TObject); procedure mmInsClick(Sender: TObject); procedure mmChangeClick(Sender: TObject); procedure mmExitClick(Sender: TObject); procedure spbtn6Click(Sender: TObject); procedure mmAboutClick(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure spbtn7Click(Sender: TObject); procedure mmHelpClick(Sender: TObject); private { Private declarations } public { Public declarations } end;var frmroot: Tfrmroot; authority,username:string; implementation uses UDM,Uauthority,Ustuinfo,UMark,Ustus,UMS,UIns,UCM,Uentry,Uabout; {$R *.dfm} function TrimSide(str:string):string; begin Result:=lowercase(trimleft(trimright(str))); end;procedure Tfrmroot.setauthority; begin Uroot.authority:=TrimSide(Uentry.authority); Uroot.username:=Trimside(Uentry.username); U.authority:=Uroot.authority; sbmain.panels[0].Text:='用户名:'+Uroot.username; sbmain.Panels[1].Text:='权限: '+Uroot.authority; if Uroot.authority='admin' then begin spbtn1.Enabled:=true;//authority spbtn5.Enabled:=true;//管理员查询 spbtn8.Enabled:=true;//院系设置 spbtn9.Enabled:=true; //院系课程设置 mmauthority.Enabled:=true; mmMarkInsert.Enabled:=true; mmIns.Enabled:=true; mmCM.Enabled:=true; //设置admin的权限 end else if Uroot.authority='power user' then begin spbtn1.Enabled:=false;//authority spbtn5.Enabled:=true;//管理员查询 spbtn8.Enabled:=true;//院系设置 spbtn9.Enabled:=true; //院系课程设置 mmauthority.Enabled:=false; mmMarkInsert.Enabled:=true; mmIns.Enabled:=true; mmCM.Enabled:=true; //设置admin的权限 end else if Uroot.authority='user' then begin spbtn1.Enabled:=false;//authority spbtn5.Enabled:=false;//管理员查询 spbtn8.Enabled:=false;//院系设置 spbtn9.Enabled:=false; //院系课程设置 mmauthority.Enabled:=false; mmMarkInsert.Enabled:=false; mmIns.Enabled:=false; mmCM.Enabled:=false; //设置admin的权限 end; end; procedure Tfrmroot.FormCreate(Sender: TObject); begin with Dm do begin adocon.Connected:=false; adocon.ConnectionString:='Provider=SQLOLEDB.1;Password=123;Persist Security Info=True;User ID=www;Initial Catalog=Stumanager;Data Source=(local)'; try begin adocon.Connected:=true; end; except on E: exception do begin application.MessageBox('连接数据库失败,请检查服务器','错误'); application.Terminate; end; end; end; self.setauthority;end;procedure Tfrmroot.spbtn1Click(Sender: TObject); begin frmauthority.show end;procedure Tfrmroot.spbtn2Click(Sender: TObject); begin frmstuinfo.Show; end;procedure Tfrmroot.spbtn3Click(Sender: TObject); begin if Uroot.authority='user' then begin frmMark.pcMark.ActivePageIndex:=1;
end else begin frmMark.pcMark.ActivePageIndex:=0; end; frmMark.show; end;procedure Tfrmroot.spbtn4Click(Sender: TObject); begin frmstus.Show; end;procedure Tfrmroot.spbtn5Click(Sender: TObject); begin frmMS.Show; end;procedure Tfrmroot.spbtn8Click(Sender: TObject); begin frmIns.show; end;procedure Tfrmroot.spbtn9Click(Sender: TObject); begin frmCM.Show; end;procedure Tfrmroot.mmauthorityClick(Sender: TObject); begin frmauthority.Show;
end;procedure Tfrmroot.mmStuinfoClick(Sender: TObject); begin frmstuinfo.Show; end;procedure Tfrmroot.mmCMClick(Sender: TObject); begin frmCM.Show; end;procedure Tfrmroot.mmStuSClick(Sender: TObject); begin frmstus.Show; end;procedure Tfrmroot.mmMsClick(Sender: TObject); begin frmMS.Show; end;procedure Tfrmroot.mmMarkInsertClick(Sender: TObject); begin frmMark.Show; frmMark.pcMark.ActivePageIndex:=0;
end;procedure Tfrmroot.mmMarkSearchClick(Sender: TObject); begin frmMark.Show; frmMark.pcMark.ActivePageIndex:=1;end;procedure Tfrmroot.mmInsClick(Sender: TObject); begin frmins.Show; end;procedure Tfrmroot.mmChangeClick(Sender: TObject); begin frmroot.Hide; frmentry.Showmodal; frmroot.setauthority; frmroot.Show; end;procedure Tfrmroot.mmExitClick(Sender: TObject); begin frmroot.Close; end;procedure Tfrmroot.spbtn6Click(Sender: TObject); begin frmroot.Close; end;procedure Tfrmroot.mmAboutClick(Sender: TObject); begin frmabout.show; end;procedure Tfrmroot.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin if Application.MessageBox('真的要退出吗?','确定',mb_YesNo)=ID_Yes then begin canClose:=true; application.Terminate; end else canClose:=false; end;procedure Tfrmroot.spbtn7Click(Sender: TObject); begin application.MessageBox('暂时无帮助','呵呵'); end;procedure Tfrmroot.mmHelpClick(Sender: TObject); begin application.MessageBox('暂时无帮助','呵呵'); end;end.
好象没什么问题
碰到鬼了
unit Uroot;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ToolWin, ComCtrls, Menus, Buttons, ImgList, StdCtrls, jpeg,
ExtCtrls;type
Tfrmroot = class(TForm)
Menu: TMainMenu;
ToolBar1: TToolBar;
N1: TMenuItem;
mmChange: TMenuItem;
mmExit: TMenuItem;
N4: TMenuItem;
mmauthority: TMenuItem;
mmStuinfo: TMenuItem;
mmMark: TMenuItem;
mmCM: TMenuItem;
N9: TMenuItem;
mmStuS: TMenuItem;
mmMs: TMenuItem;
N12: TMenuItem;
mmHelp: TMenuItem;
mmAbout: TMenuItem;
spbtn1: TSpeedButton;
spbtn2: TSpeedButton;
spbtn3: TSpeedButton;
spbtn4: TSpeedButton;
spbtn5: TSpeedButton;
ToolButton1: TToolButton;
spbtn6: TSpeedButton;
spbtn7: TSpeedButton;
spbtn8: TSpeedButton;
spbtn9: TSpeedButton;
sbmain: TStatusBar;
mmMarkInsert: TMenuItem;
mmMarkSearch: TMenuItem;
mmIns: TMenuItem;
ToolButton2: TToolButton;
imglist: TImageList;
procedure FormCreate(Sender: TObject);
procedure spbtn1Click(Sender: TObject);
procedure spbtn2Click(Sender: TObject);
procedure spbtn3Click(Sender: TObject);
procedure spbtn4Click(Sender: TObject);
procedure spbtn5Click(Sender: TObject);
procedure spbtn8Click(Sender: TObject);
procedure spbtn9Click(Sender: TObject);
procedure setauthority;
procedure mmauthorityClick(Sender: TObject);
procedure mmStuinfoClick(Sender: TObject);
procedure mmCMClick(Sender: TObject);
procedure mmStuSClick(Sender: TObject);
procedure mmMsClick(Sender: TObject);
procedure mmMarkInsertClick(Sender: TObject);
procedure mmMarkSearchClick(Sender: TObject);
procedure mmInsClick(Sender: TObject);
procedure mmChangeClick(Sender: TObject);
procedure mmExitClick(Sender: TObject);
procedure spbtn6Click(Sender: TObject);
procedure mmAboutClick(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure spbtn7Click(Sender: TObject);
procedure mmHelpClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
frmroot: Tfrmroot;
authority,username:string;
implementation
uses UDM,Uauthority,Ustuinfo,UMark,Ustus,UMS,UIns,UCM,Uentry,Uabout;
{$R *.dfm}
function TrimSide(str:string):string;
begin
Result:=lowercase(trimleft(trimright(str)));
end;procedure Tfrmroot.setauthority;
begin
Uroot.authority:=TrimSide(Uentry.authority);
Uroot.username:=Trimside(Uentry.username);
U.authority:=Uroot.authority;
sbmain.panels[0].Text:='用户名:'+Uroot.username;
sbmain.Panels[1].Text:='权限: '+Uroot.authority;
if Uroot.authority='admin' then
begin
spbtn1.Enabled:=true;//authority
spbtn5.Enabled:=true;//管理员查询
spbtn8.Enabled:=true;//院系设置
spbtn9.Enabled:=true; //院系课程设置
mmauthority.Enabled:=true;
mmMarkInsert.Enabled:=true;
mmIns.Enabled:=true;
mmCM.Enabled:=true;
//设置admin的权限
end
else if Uroot.authority='power user' then
begin
spbtn1.Enabled:=false;//authority
spbtn5.Enabled:=true;//管理员查询
spbtn8.Enabled:=true;//院系设置
spbtn9.Enabled:=true; //院系课程设置
mmauthority.Enabled:=false;
mmMarkInsert.Enabled:=true;
mmIns.Enabled:=true;
mmCM.Enabled:=true;
//设置admin的权限
end
else if Uroot.authority='user' then
begin
spbtn1.Enabled:=false;//authority
spbtn5.Enabled:=false;//管理员查询
spbtn8.Enabled:=false;//院系设置
spbtn9.Enabled:=false; //院系课程设置
mmauthority.Enabled:=false;
mmMarkInsert.Enabled:=false;
mmIns.Enabled:=false;
mmCM.Enabled:=false;
//设置admin的权限
end;
end;
procedure Tfrmroot.FormCreate(Sender: TObject);
begin
with Dm do
begin
adocon.Connected:=false;
adocon.ConnectionString:='Provider=SQLOLEDB.1;Password=123;Persist Security Info=True;User ID=www;Initial Catalog=Stumanager;Data Source=(local)';
try
begin
adocon.Connected:=true;
end;
except on E: exception do
begin
application.MessageBox('连接数据库失败,请检查服务器','错误');
application.Terminate;
end;
end;
end;
self.setauthority;end;procedure Tfrmroot.spbtn1Click(Sender: TObject);
begin
frmauthority.show
end;procedure Tfrmroot.spbtn2Click(Sender: TObject);
begin
frmstuinfo.Show;
end;procedure Tfrmroot.spbtn3Click(Sender: TObject);
begin
if Uroot.authority='user' then
begin
frmMark.pcMark.ActivePageIndex:=1;
end
else
begin
frmMark.pcMark.ActivePageIndex:=0;
end; frmMark.show;
end;procedure Tfrmroot.spbtn4Click(Sender: TObject);
begin
frmstus.Show;
end;procedure Tfrmroot.spbtn5Click(Sender: TObject);
begin
frmMS.Show;
end;procedure Tfrmroot.spbtn8Click(Sender: TObject);
begin
frmIns.show;
end;procedure Tfrmroot.spbtn9Click(Sender: TObject);
begin
frmCM.Show;
end;procedure Tfrmroot.mmauthorityClick(Sender: TObject);
begin
frmauthority.Show;
end;procedure Tfrmroot.mmStuinfoClick(Sender: TObject);
begin
frmstuinfo.Show;
end;procedure Tfrmroot.mmCMClick(Sender: TObject);
begin
frmCM.Show;
end;procedure Tfrmroot.mmStuSClick(Sender: TObject);
begin
frmstus.Show;
end;procedure Tfrmroot.mmMsClick(Sender: TObject);
begin
frmMS.Show;
end;procedure Tfrmroot.mmMarkInsertClick(Sender: TObject);
begin
frmMark.Show;
frmMark.pcMark.ActivePageIndex:=0;
end;procedure Tfrmroot.mmMarkSearchClick(Sender: TObject);
begin
frmMark.Show;
frmMark.pcMark.ActivePageIndex:=1;end;procedure Tfrmroot.mmInsClick(Sender: TObject);
begin
frmins.Show;
end;procedure Tfrmroot.mmChangeClick(Sender: TObject);
begin
frmroot.Hide;
frmentry.Showmodal;
frmroot.setauthority;
frmroot.Show;
end;procedure Tfrmroot.mmExitClick(Sender: TObject);
begin
frmroot.Close;
end;procedure Tfrmroot.spbtn6Click(Sender: TObject);
begin
frmroot.Close;
end;procedure Tfrmroot.mmAboutClick(Sender: TObject);
begin
frmabout.show;
end;procedure Tfrmroot.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
if Application.MessageBox('真的要退出吗?','确定',mb_YesNo)=ID_Yes then
begin
canClose:=true;
application.Terminate;
end
else canClose:=false;
end;procedure Tfrmroot.spbtn7Click(Sender: TObject);
begin
application.MessageBox('暂时无帮助','呵呵');
end;procedure Tfrmroot.mmHelpClick(Sender: TObject);
begin
application.MessageBox('暂时无帮助','呵呵');
end;end.