如何让日期控件不占据窗体上的空间?-麥田
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-窗体/数据页


如何让日期控件不占据窗体上的空间?

发表时间:2008/2/16 7:59:16 评论(0) 浏览(7150)  评论 | 加入收藏 | 复制
   
摘 要:如何让日期控件不占据窗体上的空间?
正 文:

问题:

  如何让日期控件不占据窗体上的空间?
如何获取某个控件在窗体上的绝对像素或者缇位置?

 

 

回答:

  思路,直接新建一个frmCalendarSelect窗体,添加一个日期控件,然后设置窗体弹出为是。其他窗体需要选择日期时只要打开frmCalendarSelect窗体,并将该窗体停靠在控件下方即可。

 

停靠在哪里,也就是某个控件在屏幕上的绝对位置只需要用 API ClientToScreen 就可以找到。


'//按 ALT+F11 转到 vba 界面,
'//新建一个模块
'//将以下代码 COPY 进去

 

'ClientToScreen 需要使用
Public Type POINTAPI
    x As Long
    y As Long
End Type

Public Enum TwipsTransfer
    DIRECTION_VERTICAL = 1
    DIRECTION_HORIZONTAL = 0
End Enum

'apiGetDeviceCaps 的参数
Public Const LOGPIXELSX = 88
Public Const LOGPIXELSY = 90

'SetWindowPos wFlags 参数使用的常数
Public Const SWP_NOSIZE = &H1
Public Const SWP_NOZORDER = &H4
Public Const SWP_NOMOVE = &H2
Public Const SWP_DRAWFRAME = &H20


'相对位置转换为屏幕绝对位置
Public Declare Function ClientToScreen Lib "user32" (ByVal hwnd As Long, lpPoint As POINTAPI) As Long

'移动窗体,或者更改窗体在屏幕上的Z轴顺序
Public Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, _
    ByVal hWndinsertAfter As Long, ByVal x As Long, ByVal y As Long, _
    ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long


Public Declare Function apiGetDC Lib "user32" Alias "GetDC" (ByVal hwnd As Long) As Long
Public Declare Fu

Access软件网交流QQ群(群号:198465573)
 
 相关文章
access开发平台--找不到日期控件(DTPicker)的解决方...  【褚玉春  2009/1/16】
Vista系统下access2003日期控件不可用的解决方法  【褚玉春  2009/4/30】
关于报销教程中office2003无法添加日期控件的解决办法\wi...  【fxs  2012/5/3】
WIN7系统注册日期控件“DllRegisterServer调用失...  【宏鹏  2012/7/19】
常见问答
技术分类
相关资源
文章搜索
关于作者

麥田

文章分类

文章存档

友情链接