用Delphi做了一个用户登录的界面,然后又设置了一个修改密码的按钮,可是自己弄了半天,总是不能修改成功,这该怎么办呢?
解决方案 »
- 学了一段时间,有点不想学了
- 网页抓取的问题
- 创建数组
- Delphi 中如何实现Excel数据表导入到SQL2000
- 在image中使用textout()输出文字时如何使文字在image中水平居中?
- 庆祝<修罗>前辈的爱情小说浏览量突破6000回复超过500大家鼓掌!
- 怎样向表中用adoquery追加数据?
- 我想转DF!
- 请教(有点急):listview的checkboxes属性设为true,我想让listview符合条件的行不可选中,应该如何设置?
- delphi sql高手在 哪里?
- ???????????????有一個功能不知能否實現???????????????
- 想要设计一个通用的环行缓冲区管理器对象来管理不同的Record类型的数据,应该怎样写?
http://community.csdn.net/Expert/topic/4905/4905072.xml
下面是form1中的代码,form1是登录界面,其中用户名从edit1.text输入,密码从edit2.text输入,button1为确定按钮,button2为取消按钮,button3为修改密码按钮,代码如下:
procedure TForm1.Button1Click(Sender: TObject);
begin
var1:=Edit1.Text;
var2:=Edit2.Text; if(var1='')and (var2='')then
ShowMessage('请输入用户名和密码!')
else if(var1<>'')and(var2='')then
ShowMessage('请输入密码!')
else if(var1='')and(var2<>'')then
ShowMessage('请输入用户名!')
else if(var1='zll')and(var2='123456')then
form2.show
else
ShowMessage('用户名与密码不对,请重新输入!');end;procedure TForm1.Button2Click(Sender: TObject);
begin
var1:='';
var2:='';
close;
end;procedure TForm1.Button3Click(Sender: TObject);
begin
form3.show;
var2:=var4;
end;form2是登陆成功后要进入的界面,form3是修改密码窗口,form3中旧密码从edit1.text输入,新密码从edit2.text输入,button1为确定按钮,button2为取消按钮,代码如下:
procedure TForm3.Button1Click(Sender: TObject);
begin
var3:=Edit1.Text;
var4:=Edit2.Text; if(var3=form1.Edit2.Text)then
ShowMessage('密码修改成功!')
else
ShowMessage('旧密码不对,请重新输入!');
//var2:=var4;end;procedure TForm3.Button2Click(Sender: TObject);
begin
var3:='';
var4:='';
close;
end;我在这里谢谢大家的帮忙了!
begin
qry1.SQL.Text:='select psw1 from pswt where name1 = '''+edit1.Text+''' ';
qry1.Open;
if qry1.RecordCount<>0 then
begin
if qry1.FieldByName('psw1').AsString=edt1.Text then
begin
qry2.SQL.Text:='update pswt set psw1 = '''+edt2.Text+'''';
qry2.ExecSQL;
end;
end;
showmessage('更改密码成功');
end;
begin
form3.show;
// var2:=var4;
end;
var2:=var4;(这个不要)
if(var3=form1.Edit2.Text)then
begin
ShowMessage('密码修改成功!');
var2=var4;
end还有
else if(var1='zll')and(var2='123456')then
form2.show
else
ShowMessage('用户名与密码不对,请重新输入!');
这个判断完全错误,你已经把var2定死了
else
ShowMessage('旧密码不对,请重新输入!');
else if(var1='zll')and(var2='123456')then
form2.show
else
ShowMessage('用户名与密码不对,请重新输入!');
这一段把密码定死了的代码该怎样改呢?
就算前面提示你修改成功
但是这里也会说('用户名与密码不对,请重新输入!');的
else if(var1='zll')and(var2='123456')then 里面的var2='123456'改为var2=temp,把temp定义为一个变量,可是temp还是要赋值的,要不怎么进入系统,所以给temp赋值后,var2又成死的了啊,请大哥你好人做到底,送佛上西天,你就帮我改改吧!非常感谢呀!
FORM1的代码
var
Form1: TForm1;
UserName,PassWord:string;
implementationuses Unit2, Unit3;{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
begin
if (form1.Edit1.Text=UserName) and (form1.Edit2.Text=PassWord) then
form3.show else
ShowMessage('用户名或密码错误');
end;procedure TForm1.FormCreate(Sender: TObject);
begin
UserName:='zll';
PassWord:='123456';
end;procedure TForm1.Button2Click(Sender: TObject);
begin
form3.show;
end;FORM3的代码
procedure TForm3.Button1Click(Sender: TObject);
begin
if form1.Edit2.Text=form3.Edit1.Text then
begin
PassWord:=form3.Edit2.Text;
ShowMessage('修改成功');
end else
ShowMessage('原密码错误');
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
UserName:='zll';
PassWord:='123456';
end;
这一段代码说明,只要一运行form1,密码就重新为123456,那么我想每次修改完密码以后,关闭工程再次打开时,有效的密码是修改后的那一个,这该怎么做呢?谢谢!请多多帮忙