设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2566|回复: 5
打印 上一主题 下一主题

[模块/函数] 求助:关于窗体居中的模块设计及调用

[复制链接]
跳转到指定楼层
1#
发表于 2006-2-12 17:40:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我设计了一个模块,希望在窗体加载时能够自动调用,实现窗体的自动居中.

模块名为:M_FormCenter

内容代码来自网友提供的VBA编程资料,稍作修改)

public FormCenter(f as form)

docmd.echo false

docmd.maximize

dim x,y as integer

x=f.windowwidth

y=f.windowheight

docmd.restore

docmd.echo true

move (x-me.windowwidth)/2,(y-me.windowheight)/2

end sub

在窗体启动代码中加入

Call FormCenter(me)

因为我以前没用用过模块,所以不知道是我的代码有问题还是模块调用上出了问题.望高手帮忙解答.
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2006-2-12 21:30:00 | 只看该作者
1  public sub FormCenter(f as form)

2  f.move (x-f.windowwidth)/2,(y-f.windowheight)/2

[此贴子已经被作者于2006-2-12 13:31:34编辑过]

3#
发表于 2006-2-13 03:03:00 | 只看该作者
在模块中不能使用Me,红色的部分要注意,2楼的讲的很清楚了。

public sub FormCenter(f as form)



docmd.echo false



docmd.maximize



dim x as integer  ,y as integer   '应分别声明



x=f.windowwidth



y=f.windowheight



docmd.restore



docmd.echo true



f.move (x-f.windowwidth)/2,(y-f.windowheight)/2

end sub

4#
 楼主| 发表于 2006-2-13 18:00:00 | 只看该作者
谢谢版主!

第一个问题是打字上的错误,下次我一定仔细看了再上传!

关键是学到了应该用F.MOVE,唉,这个问题自己仔细看看应该能解决的,以后要多研究研究,不再乱浪费网友、版主的精力了。
5#
 楼主| 发表于 2006-2-13 18:41:00 | 只看该作者
又出现一个问题。窗体居中后,它关联的下一级窗体为什么在打开的时候总是层次上在当前窗体之下,以至于无法看全。这是什么原因?
6#
发表于 2010-6-13 17:47:21 | 只看该作者
为什么没有人回啊~也想学学
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-15 09:54 , Processed in 0.115640 second(s), 29 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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