关于网友提出的“ 这段代码出现了什么问题,水平有限看不明白,请赐教!”问题疑问,本网通过在网上对“ 这段代码出现了什么问题,水平有限看不明白,请赐教!”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: 这段代码出现了什么问题,水平有限看不明白,请赐教!
描述: 这段的代码的错误提示为:
raised exception class EListError with message'List index out of bounds(7)'
请高手帮助看一下,谢谢!
权限表qx的结构为:
用户名 菜单1 菜单2 菜单3 .............................菜单n
unit loginroom;//系统的登陆窗体
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons;
type
Troomlogin = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
BitBtn2: TBitBtn;
BitBtn1: TBitBtn;
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
roomlogin: Troomlogin;
yhmi:string; //用户名
yhma:string //密码
i:integer;
implementation
uses datadm, roommain, pwdmodify;
{$R *.dfm}
procedure Troomlogin.BitBtn2Click(Sender: TObject);
begin
application.Terminate;
end;
procedure Troomlogin.BitBtn1Click(Sender: TObject);
begin
if trim(edit1.Text)='' then
begin
showmessage('用户名不能为空!');
edit1.SetFocus;
exit;
end;
if trim(edit2.Text)='' then
begin
showmessage('用户密码不能为空');
edit2.SetFocus;
exit;
end;
with dm1.query1 do
begin
close;
sql.Clear;
sql.text:='select * from userinfo where 用户名=:a and 密码=:b';
parameters.ParamByName('a').Value:=trim(edit1.Text);//取得登陆窗体中所输入的用户名
parameters.ParamByName('b').Value:=trim(edit2.Text)//取得登陆窗体中所输入的密码
open;
end;
if dm1.query1.RecordCount=1 then
begin
mainform.StatusBar1.Panels[1].Text:='操作员:'+trim(edit1.Text);
yhmi:=trim(edit1.Text);
yhma:=trim(edit2.Text);
roomlogin.Close;
end
else
begin
showmessage('非法的登录信息,请重新输入');
edit1.Clear;
edit2.Clear;
edit1.SetFocus;
end;
with dm1.query7 do //判断该用户所具有的权限
begin
close;
sql.Clear;
sql.add('select * from qx where 用户名=:loginid');//qx为权限表
parameters.ParamByName('loginid').Value:=yhmi;
open;
end;
for i:=1 to dm1.query7.FieldCount-1 do
begin
if dm1.query7.Fields[i].asinteger=1 then
mainform.MainMenu1.Items[i].Visible:=false;//是不是这个地方有问题,我看不出来
end;
end;
end.
以上介绍了“ 这段代码出现了什么问题,水平有限看不明白,请赐教!”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3315057.html