白云点缀的蓝 发表于 2021-12-19 18:48

如何让一个窗体跟随另一个窗体?

如何让一个窗体跟随另一个窗体?
就是有两个exe可执行程序,
一个程序运行,然后另一个程序跟随,
窗体走到哪另一个窗体走到哪,窗体放大,另一个窗体也放大。窗体缩小,另一个窗体也缩小。

马云爱逛京东 发表于 2021-12-19 19:10

实时获取窗体句柄和矩形,思路大致是这样的

wendyhouse6 发表于 2021-12-19 19:34

大多数播放器就像你说的

52jcool 发表于 2021-12-19 19:53

过来学习了

brovo 发表于 2021-12-19 20:48

本帖最后由 brovo 于 2021-12-19 21:05 编辑

C#的写法我不会,易语言的大概是这个

.版本 2

.程序集 窗口程序集_启动窗口

.子程序 __启动窗口_创建完毕

时钟1.时钟周期 = 100

.子程序 _时钟1_周期事件
.局部变量 位置, 精易_矩形


位置=窗口_取位置和大小 (进程_名取句柄 (“这里填写你的你的主窗口进程名.exe”))             ‘这里通过进程名字获取你需要附着的主窗口的窗口句柄,然后通过精易模块的取窗口位置和大小的命令获取到你的主附着窗口的X,Y,和长宽。
_启动窗口.左边 = 位置.左边 + 位置.宽度                     '这句话的意思是你的副启动窗口和你需要附着的主窗口水平距离的位置:也就是 X值+附着窗口的宽。
_启动窗口.顶边 = 位置.顶边                                          ' 这句话的意思是你的副启动窗口和你需要附着的主窗口垂直距离相等。
_启动窗口.高度 = 位置.高度                                           ' 副窗口和高度和需要附着窗口的高度一致。需要精易模块,自行取官网下载吧



如果你没办法编辑这两个软件,也可以这么写:

.版本 2

.子程序 __启动窗口_创建完毕

时钟1.时钟周期 = 100

.子程序 _时钟1_周期事件
.局部变量 主窗口位置, 精易_矩形
.局部变量 随动窗口位置, 精易_矩形


主窗口位置 = 窗口_取位置和大小 (进程_名取句柄 (“这里填写你的你的主窗口进程名.exe”))
随动窗口位置 = 窗口_取位置和大小 (进程_名取句柄 (“这里填写你的你的随动窗口进程名.exe”))


随动窗口位置.左边 = 主窗口位置.左边 + 主窗口位置.宽度
随动窗口位置.顶边 = 主窗口位置.顶边
随动窗口位置.高度 = 主窗口位置.高度
随动窗口位置.宽度 = 200' 你的默认值
窗口_置位置和大小 (进程_名取句柄 (“这里填写你的你的随动窗口进程名exe”), 随动窗口位置.顶边, 随动窗口位置.左边, 随动窗口位置.高度, 随动窗口位置.宽度)

Raohz520 发表于 2021-12-19 21:10

直接更改跟随的窗体父窗口未主窗体行不行

Crazy开发仔 发表于 2021-12-19 21:21

利用WINApi获取目标窗体句柄,然后为所欲为

guangzisam 发表于 2021-12-19 22:01

不要定期(每秒很多次)。主窗口的移动事件?

不知道改成啥 发表于 2021-12-19 23:44

写一个定时器去取那个窗体的位置以及状态。

he1a2s0 发表于 2021-12-20 12:53

看下这个: https://github.com/thoemmi/StickyWindows
页: [1] 2
查看完整版本: 如何让一个窗体跟随另一个窗体?