怎样才能让OpenDialog显示的位置在主窗体前.. ( 积分: 200 )

  • 主题发起人 主题发起人 SystemError
  • 开始时间 开始时间
S

SystemError

Unregistered / Unconfirmed
GUEST, unregistred user!
如果主窗体在屏幕中间..OpenDialog显示的位置在主窗体前(也是在屏幕中间).但如果把主窗体拖到屏幕的左角,重新打开OpenDialog, OpenDialog显示的位置还是在屏幕中间..怎样才能让OpenDialog显示的位置跟着主窗体的位置走.
 
看到很多软件都可以实现我说的那样啊..他们是怎么做到的呢?
 
procedure TfrmMain.Button1Click(Sender: TObject);
begin
OpenDialog1.Execute;
FChanged := False;
end;

procedure TfrmMain.OpenDialog1SelectionChange(Sender: TObject);
begin
if FChanged then Exit;

FChanged := True;
SetWindowPos(GetParent(OpenDialog1.Handle), HWND_TOP, 0, 0,
0, 0, SWP_SHOWWINDOW);

end;
 
FChanged 为什么要设这个变量呢? 是起到什么效果呢?
 
后退
顶部