我的delphi的密码修改程序,运行时出现一下的提示
我的程序代码如下procedureTForm6.Button1Click(Sender:TObject);varadoquery1:TAdoQuery;beginifed...
我的程序代码如下procedure TForm6.Button1Click(Sender: TObject);
var adoquery1:TAdoQuery;begin if edit2.text=edit3.text then begin if ADOQuery1.active=False then exit; ADOQuery1.Append; ADOQuery1.FieldByName('密码').asstring:='Edit2.Text';
ADOQuery1.Post; end; begin Application.MessageBox('两次密码输入不一致,请检查!','提示信息',mb_ok); end; edit2.SetFocus; edit2.text:=''; edit3.text:='';end; 展开
var adoquery1:TAdoQuery;begin if edit2.text=edit3.text then begin if ADOQuery1.active=False then exit; ADOQuery1.Append; ADOQuery1.FieldByName('密码').asstring:='Edit2.Text';
ADOQuery1.Post; end; begin Application.MessageBox('两次密码输入不一致,请检查!','提示信息',mb_ok); end; edit2.SetFocus; edit2.text:=''; edit3.text:='';end; 展开
6个回答
展开全部
你的ADOQuery1还没有内存建立,直接使用当然内存报错咯。。
先要ADOQuery1:=TADOQuery.Create(self);
procedure TForm6.Button1Click(Sender: TObject);
var
adoquery1:TAdoQuery;
begin
if edit2.text=edit3.text then
begin
ADOQuery1:=TADOQuery.Create(self);
ADOQuery1.Connection:=ADOConnection1;//连接数据库
try
if ADOQuery1.active=False then exit;
ADOQuery1.Append;
ADOQuery1.FieldByName('密码').asstring:=Edit2.Text;
ADOQuery1.Post;
finally
ADOQuery1.Free;
end;
end
else begin
Application.MessageBox('两次密码输入不一致,请检查!','提示信息',mb_ok);
end;
edit2.SetFocus;
edit2.text:='';
edit3.text:='';
先要ADOQuery1:=TADOQuery.Create(self);
procedure TForm6.Button1Click(Sender: TObject);
var
adoquery1:TAdoQuery;
begin
if edit2.text=edit3.text then
begin
ADOQuery1:=TADOQuery.Create(self);
ADOQuery1.Connection:=ADOConnection1;//连接数据库
try
if ADOQuery1.active=False then exit;
ADOQuery1.Append;
ADOQuery1.FieldByName('密码').asstring:=Edit2.Text;
ADOQuery1.Post;
finally
ADOQuery1.Free;
end;
end
else begin
Application.MessageBox('两次密码输入不一致,请检查!','提示信息',mb_ok);
end;
edit2.SetFocus;
edit2.text:='';
edit3.text:='';
金山毒霸
2024-10-31 广告
2024-10-31 广告
大部分系统错误,是因为某些DLL文件丢失造成的,比如未安装DirectX9或DirectX 9.0组件已损坏、缺少Visual C ++库、未安装.net库。解决方法如下:一、 手动解决方法1、先确定电脑操作系统是多少位的,现在的电脑一般都...
点击进入详情页
本回答由金山毒霸提供
展开全部
procedure TForm6.Button1Click(Sender: TObject);
//var
//adoquery1:TAdoQuery;
begin
if edit2.text<>edit3.text then
begin
if ADOQuery1.active=False then exit;
ADOQuery1.Append;
ADOQuery1.FieldByName('密码').asstring:=Edit2.Text;
ADOQuery1.Post;
end;
begin
Application.MessageBox('两次密码输入不一致,请检查!','提示信息',mb_ok);
end;
edit2.SetFocus;
edit2.text:='';
edit3.text:='';
end;
//var
//adoquery1:TAdoQuery;
begin
if edit2.text<>edit3.text then
begin
if ADOQuery1.active=False then exit;
ADOQuery1.Append;
ADOQuery1.FieldByName('密码').asstring:=Edit2.Text;
ADOQuery1.Post;
end;
begin
Application.MessageBox('两次密码输入不一致,请检查!','提示信息',mb_ok);
end;
edit2.SetFocus;
edit2.text:='';
edit3.text:='';
end;
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
定义了一个变量adoquery1:TAdoQuery;但是没有创建就直接使用,也没有连接到数据库,这违反了控件的使用规则.当然会出问题.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1、adoquery1没有初始化,不知道是不是提问者提问时省略了这部分内容
2、if 嵌套错误,少 ELSE
3、Edit2.Text 不应有单引号
2、if 嵌套错误,少 ELSE
3、Edit2.Text 不应有单引号
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
edit2.text 两边是不是多了''?好像 第一个IF 没有配对的else 我看你的意思 应该是要else的
而且 貌似 ADOQuery1.FieldByName('密码').asstring 给它赋值 不是这样的吧 我忘记了 你可以搜一下
而且 貌似 ADOQuery1.FieldByName('密码').asstring 给它赋值 不是这样的吧 我忘记了 你可以搜一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
ADOQuery1.FieldByName('密码').asstring:='Edit2.Text'; 你这里的edit2.text打引号干吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询