我看哪位江湖好手能解出来!!!(0分)

  • 主题发起人 主题发起人 lk628025
  • 开始时间 开始时间
L

lk628025

Unregistered / Unconfirmed
GUEST, unregistred user!
我用了下面一段代码后。。。。。
procedure TForm1.WMMove(var msg: TMessage);
begin

try
if Assigned(file_form) then

begin

with file_formdo

begin

file_form.Left := form1.StatusBar1.BoundsRect.Bottom;
file_form.left:=form1.Left;
file_form.top:=form1.BoundsRect.Bottom;
end;

end;

except
exit;
end;

end;

但现在引发了的问题,运行的程序关闭后出现如下对话框:
Project xxxx raised exception class EAeecssviolation with message 'Aeecssviolation at address 00000000 Read of address 00000000'.
Process stopped. Use Step or Run to continue.
我看哪位江湖好手能解出来!!!
 
哦,在 public
{ Public declarations }下面有这样一句:

procedure WMMove(var msg: TMessage);
Message WM_Move;
 
procedure TForm1.WMMove(var msg: TMessage);
begin

try
if Assigned(file_form) then

begin

with file_formdo

begin

file_form.Left := StatusBar1.BoundsRect.Bottom;
file_form.left:=Left;
file_form.top:=BoundsRect.Bottom;
end;

end;

except
exit;
end;

end;


改成如上試一下啦
 
其实主要是procedure WMMove(var msg: TMessage);
Message WM_Move;
这句中的(Message WM_Move;)有问题。如果我去掉这句,程序就没有问题,可去掉后就没有磁性
效果了,上面那一整句就没有发挥作用了。再想想看,有没有什么语句能够替换掉那条语句
 
接受答案了.
 
后退
顶部