将MdiForm内的窗体移出MdiForm

     这个功能的实现只是通过使用SetParent来适时改变子窗体的容器。

     VB中Parent的属性,VB的Parent指的是这个控制项(或window)是哪一个窗体的子窗体(父窗体被卸载时子窗体也跟着被卸载)这要和容器的概念区别开来。例如:

画一个Command button在Frame中,则Command Button的父窗体是Form,而容器是Frame,即Command Button
随着Frame移动,但Form结束时也随之卸载。


而SetParent是指容器的改变,而非VB中Parent属性的改变。下面就说如何实现:

(声明和代码的书写上一篇博客已经介绍过了,这里略过!)

1、先通过Mousedown事件来判断当前父窗体句柄并保存起来!

2、通过Mousemove事件来取得当前鼠标的位置的窗体句柄,并判断是否与Mousedown事件中的句柄一致,同时返回真与假两个值(真为一致假为不一致)!

3、根据Mousemove事件的判断结果来改变子窗体的容器。若返回值为真,则不改变窗体的容器。若为假则通过Setparent来改变当前子窗体的容器!

 

如此就可实现窗体的移进移出功能!
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值