一个窗口跟随另一个窗口动态改变位置?解决办法
一个窗口跟随另一个窗口动态改变位置?
问题描述:
窗口A为用户注册窗口,点击窗口中的Btn1按钮将弹出窗口B(省份选择窗口),
我想实现如下效果:
1.弹出的窗口B自动贴在窗口A的右侧。
2.拖到窗口A的时候窗口B自动跟随移动。
请高手帮忙!
------解决方案--------------------
可以考虑用一个窗体解决问题
------解决方案--------------------
把form2的东西都放入到一个panle里面,要拖动的时候把panle show出来
------解决方案--------------------
procedure WMMOVE(var Msg: TMessage); message WM_MOVE;
procedure Aform.WMMOVE(var Msg: TMessage);
begin
Inherited;
if Bform <> nil then
begin
Bform.Left:= Width + Left;
Bform.Top:=Top;
end;
end;
procedure Aform.btonClick(Sender: TObject);
begin
if Bform= nil then
begin
Bform:= Tform.Create(MainForm);
end;
Bform.Left:= Width + Left;
Bform.Top:=Top;
Bform.Show;
end;
问题描述:
窗口A为用户注册窗口,点击窗口中的Btn1按钮将弹出窗口B(省份选择窗口),
我想实现如下效果:
1.弹出的窗口B自动贴在窗口A的右侧。
2.拖到窗口A的时候窗口B自动跟随移动。
请高手帮忙!
------解决方案--------------------
可以考虑用一个窗体解决问题
------解决方案--------------------
把form2的东西都放入到一个panle里面,要拖动的时候把panle show出来
------解决方案--------------------
procedure WMMOVE(var Msg: TMessage); message WM_MOVE;
procedure Aform.WMMOVE(var Msg: TMessage);
begin
Inherited;
if Bform <> nil then
begin
Bform.Left:= Width + Left;
Bform.Top:=Top;
end;
end;
procedure Aform.btonClick(Sender: TObject);
begin
if Bform= nil then
begin
Bform:= Tform.Create(MainForm);
end;
Bform.Left:= Width + Left;
Bform.Top:=Top;
Bform.Show;
end;