//我在主窗体的《修改密码》按钮里用以下代码(主窗体的FormStyle:=fsMDIForm)
procedure Tmainform.SpeedButton1Click(Sender: TObject);
begin
  MyUserPassword:=TMyUserPassword.Create(self);
  MyUserPassword.ShowModal;
end;
//在《修改密码》窗体的取消按钮代码
procedure Tmyuserpassword.BitBtn2Click(Sender: TObject);
begin
  Edit1.Text:='';
  Edit2.Text:='';
  Edit3.Text:='';
end;
//在《修改密码》窗体里的确定按钮里的代码
procedure Tmyuserpassword.BitBtn1Click(Sender: TObject);
begin
  if trim(Edit3.Text)=trim(Edit2.Text) then
    begin
      Query1.Close;
      Query1.SQL.Clear;
      Query1.SQL.Add('select * from myuser where 用户名='''+(myusername)+''' and upassword='''+trim(Edit1.Text)+''' ');
      Query1.Open;
        if not Query1.Eof then
          begin
            Query1.Close;
            Query1.SQL.Clear;
            Query1.SQL.Add('update myuser set upassword='''+(Edit3.Text)+''' where 用户名='''+(myusername)+''' ');
            Query1.ExecSQL;
            ShowMessage('密码修改成功!');
          end
        else
          begin
            ShowMessage('你输入的原密码错误');
          end
      end
  else
    begin
      ShowMessage('新密码和确认密码不一样!请检查!');
    end
end;
//问题出来了:不论是按这《取消》按钮,还是ShowMessage!窗体都会自动关了!
然后回到主窗口里去了!麻烦大家帮帮忙,我是新手啊!