明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2329|回复: 3

请问如何让无模式UserForm象属性栏和工具栏一样可停靠dock?

[复制链接]
发表于 2003-2-14 15:48:00 | 显示全部楼层 |阅读模式
发表于 2003-2-14 21:53:00 | 显示全部楼层

看来要用到的属性及事件不少

对于窗体,使用的事件为UserForm_Layout()

如以下语句可以使窗体不会跑到屏幕的外面:
Private Sub UserForm_Layout()
If Me.Left < ThisDrawing.Application.WindowLeft Then
   Me.Left = ThisDrawing.Application.WindowLeft
End If
If Me.top < ThisDrawing.Application.WindowTop Then
    Me.top = ThisDrawing.Application.WindowTop
End If

If Me.top > ThisDrawing.Application.WindowTop + ThisDrawing.Application.Height - Me.Height Then
  Me.top = ThisDrawing.Application.WindowTop + ThisDrawing.Application.Height - Me.Height
End If
If Me.Left > ThisDrawing.Application.WindowLeft + ThisDrawing.Application.Width - Me.Width Then
  Me.Left = ThisDrawing.Application.WindowLeft + ThisDrawing.Application.Width - Me.Width
End If
Debug.Print "窗口距左侧距离" & Me.Left
Debug.Print "窗口距顶部距离" & Me.top
End Sub
可惜调来调去还是有问题,可能窗体中使用的单位与应用程序使用的单位不同所致,但又不知怎么转换(大家想想办法)。

另外,应用程序的WindowMovedOrResized(HWNDFrame, Moved)事件也必须使用,不然到时主程序窗口变了,你的窗体还停留在原来的位置是不对的。
发表于 2005-1-26 11:01:00 | 显示全部楼层
好东西,可是想要vc的,呵呵
发表于 2005-1-27 08:29:00 | 显示全部楼层
想法不错支持。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-27 21:00 , Processed in 0.168857 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表