说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

在vb中让控件大小和位置随着表单的大小成比例变化的方法

HTML文档下载 WORD文档下载 PDF文档下载
在vb中让控件大小和位置随着表单的大小成比例变化的方法
作者:中国农业大学图书馆
洪重阳
---- vb的可视化编程方法使得windows的一般编程变得简单直观。尤其是程序界面设计,只需用鼠标将相应的控件(按钮、图框、表格等)拖放到表单(form)上直接调整其位置和大小,即可设计出漂亮实用的界面。但在程序运行期间,如果改变表单的大小,表单上控件的大小和位置并非成比例地发生相应变化,导致界面呈现难看的不均匀现象。

---- 上述现象和问题,可在表单Form_Resize()过程编程,通过定义表单的ScaleMode属性和表单中控件的Height、Width、Top、Left属性来解决这个问题。具体实现方法如下:

用表单的Height、Width、Top、Left属性设计表单在屏幕中的位置和大小。将表单中的控件大小和位置调整好,直到得到满意的界面。

选择表单的ScaleMode属性为user;设定ScaleHeight、ScaleWidth的值,如可将这俩个值设定为100或1000或其他的数值,也可使这俩个值不等,视个人的习惯而定,这里我们将其设为1000;使ScaleTop=0、ScaleLeft=0。
---- ScaleMode属性决定了表单的ScaleHeight、ScaleWidth、ScaleTop、ScaleLeft属性值和表单中控件的Height、Width、Top、Left属性值的度量单位(用户自定义、缇、点、像素、字符、英寸、毫米、厘米等)。一般使Scaletop和ScaleLeft等于零。ScaleHeight、ScaleWidth属性值表示以ScaleMode值为度量单位的表单的高和宽,它们的改变不会使表单的大小和位置发生变化。改变ScaleMode的值不会影响表单和表单中控件的位置和大小,只是表单的ScaleHeight、ScaleWidth属性值和表单中控件的Height、Width、Top、Left属性值要根据新的度量单位自动发生变化。由于表单的大小、表单中控件的位置和大小已经设定,除了"用户自定义"度量单位外,表单的ScaleHeight、ScaleWidth、ScaleTop、ScaleLeft属性值是一定的。只要手工改变表单的ScaleHeight、ScaleWidth、ScaleTop、ScaleLeft任一属性值,ScaleMode的值就变成了"用户自定义"。
---- 用户自定义ScaleHeight值表示将表单的高度等分了ScaleHeight等份,表单中控件的Height属性值是以表单高度等分了ScaleHeight等份的一份为单位。用户自定义ScaleWidth值表示将表单的宽度等分了ScaleWidth等份,表单中控件的Width属性值是以表单宽度等分了ScaleWidth等份的一份为单位。

---- 例如:有一个表单form1,form1中有一个控件Cammand1,Cammand1的位置和大小已经设计好

form1.ScaleMode=user
form1.Height=6800
form1.ScaleHeight=1000
这时Cammand1.Height的值是以6800/1000=6.8为单位的,
即为表单高度的千分之六点八为单位。

记下表单中每一个希望与表单大小变化而成比例变化的控件的Height、Width、Top、Left值。

用鼠标双击表单没有控件的地方,点出编程界面右上方的表单过程名表,选择Form_Resize过程,在Form_Resize过程编程如下:
Private Sub Form_Resize()
ScaleHeight = 1000
ScaleWidth = 1000
表单中控件名1.top=步骤3记下的值
表单中控件名1.Width=步骤3记下的值
表单中控件名1.Left=步骤3记下的值
表单中控件名2.Height=步骤3记下的值
表单中控件名2.top=步骤3记下的值
表单中控件名2.Width=步骤3记下的值
表单中控件名2.Left=步骤3记下的值
表单中控件名2.Height=步骤3记下的值
... ...
end sub

---- 总之, 通过以上4步就可实现让控件大小和位置随着表单的大小变化而成比例变化,从而解决界面因表单大小的改变而变得不均匀的问题。

SlideIdea CEO李建忠:移动产品的技术面思考 BDTC→→百度林仕鼎、腾讯蒋杰、阿里唐洪论道大数据平台与技术 谷歌首席互联网布道师:隐私保护并不是一种正常行为 微软公开“挑衅”谷歌,出售反谷歌标语T恤 四大UX设计原则,打造网站最佳浏览体验 【BDTC讲师】黄晓庆:从小灵通到Hadoop与实时大数据分析 【BDTC讲师】杨强:从禽流感预测到图片语义解释 2013中国大数据技术大会讲师议题正式发布 “2013中国大数据周”即将开幕 正式发布中国大数据现状白皮书 搜狐畅游发布3D游戏引擎Genesis-3D 基于MIT协议开源 传闻微软将收购AOL旗下的Winamp和Shoutcast 【BDTC讲师】大数据时代“掘金机”:百度、360、一淘搜索技术分享 谷歌董事长:审查,将会在十年内消失 50万奖金+天使投资:创维天赐家庭互联网创新大赛开幕 专利案苹果获胜:获赔2.9亿美元 三星不服将继续上诉 Google正打造Spark:一个基于Chrome App的集成开发环境 研发周报:成为一名PHP专家其实并不难 将Vistual Studio打造成为Node.js IDE 度量Web性能的关键指标 路由器未火够!高通发布互联网处理器 Unite2014大会:移动开发者的饕餮盛宴 玩与学并存 Kano kit让你自制Raspberry Pi电脑 【BDTC讲师】Hortonworks Gunther&Ted:HBase、Stinger的发展与实践 人人网推出开放平台2.0 多项重大改进吸引开发者回流 红帽高管:将Linux价值理念和做法延伸到OpenStack Fundation 5发布:号称最快版本,响应式用户体验更完善 程序员远程工作必会编程语言JavaScript 苹果确认收购3D传感技术公司PrimeSense 从电影《饥饿游戏》里学到的IT知识 细数IE11的七大变化 2013中国大数据技术大会,你不可错过的10个理由 自由自在的人,你在吗? 后缀是nlc的电子图书那里找? 请问vc里缺省参数的函数是怎么定义的?(70分) 救救我!!!数据库管理的几个基础问题?? 急需控件 请教一个关于CListCtrl的问题??? c语言实现"智力游戏" --? Redhat下设置环境变量 我的帐号被盗了啦!!!!!!! select max(count(*)) from table group by aa这个意思的语句该怎么样写? 在SQL SERVER7.0中如何实现类似于ORACLE中的CONNECT BY实现的树型查询? 这里都是些菜尿,吗的没有一次我的提问有人给我解决的! 为什么我的问题没人响应???????? 隐藏FORM的API,谁能提供? 谁知道 jdbc-odbc数据库连接是否要装jdbc程序 哪位大峡知道MetaTools公司的Photo Soap下载网址??? 数据库打开问题? 为什么会出现 Capability not suported???? 请教高手们一个在天极网没人能回答的问题,认真做答者有分 jsp的中文问题求救 何為數據流? 为什么在保存Word文档时总是提示Word内存不足,不能保存? 谁有开发支付网关的经历,请介绍一下经验,或提供些资料给我参考,谢啦。 求救!关于怎样提交表单???? 怎样写入txt文件里 alphagx送分了 求教: delphi中 JPG图片怎样存入数据库中的BLOB字段?怎么进行VCD文件分割或存入BLOB字段? 有关ICMP重定向报文的疑问!!! 在C++Builder中调用计算机内置扬声器,声音太轻了,怎样提高音量? 一个头痛的问题!大家指教! lujun,icevi……快来看看这个数据库怎么设计 请问怎么才能让DataSource.SaveToContainer不使用GUID作为邮件名称 怎么拒绝MM。 请教:为什么对话框的背景色没改变? 请问CDO中有什么方法可以不用邮件url而使用DAV:id来获得制定的邮件 FALSH问题?来者有分!(300) 一个关于头文件的问题. 简单问题001 有人在windows下写过数控程序吗? 有关sqlserver2000数据倒入问题 我是个新手,请大家多帮忙!有个问题请教:如何传递数组参数?急!!多谢多谢 如何将float转化成CString? 我的C盘太小了,v7.0装不上,pqmagic不支持win2000!听说配置好VC6.0,其能运行C#?? 隐藏FORM的API函数,请提供。 求经!!!各位PERL程序员!我不会PERL可否三天内把一个ASP的程序转为PERL!!!! 请问怎么在Unix上用JSP建立.xls的文件,并进行内容的读写?谢谢! 如何利用cnnic的数据库进行域名查询? 寻installshield 6.30的汉化包或中文语言包,谢 如何在一个表单中打开新的表单,并把自己关闭?用公式作 字符串处理的问题。。。请大家帮帮忙。。。 为了我的那些被裁员的同志!我一周不再回答问题了。 听说现在太阳离地球越来越近,月亮离地球越来越远? 作文一件令你感动的事 生病时妈妈照顾我的事450字作文一定要有感想! 太阳对来说宇宙有多大好想知道啊 地球离太阳是越来越近还是越来越远? 我生病了同学来看我的作文500字.最好自己写,快呀. 宇宙中太阳有多大 关于“快乐的校园生活”的作文题目稍微新颖一点 有诗意一点还有4个小标题 分别是关于“军训”“野炊”“合唱”的 形式要一致一定要关于快乐的!说错了 是3个小标题 月球离地球越来越远,是不是地球离太阳也越来越远? 地氟病作文 我和书的故事 作文600字 太阳离我们越来越近,月球离我们越来越远了吗?不知是否有人注意了现在感觉太阳离我们越来越近,而月球离我们越来越远了…… 不知道是地球运动的变化还是太阳或是月球?我记得小时候肉 画出太阳、地球、月球三者的位置关系 世界四大强国是指哪些国家?请主要说一下综合国力的排名. 月亮为什么离地球越来越远?在《宇宙与人》里说,月球与地球越来越远! 快乐的星期天作文450字!给两篇作文! 世界面积第四大的国家是哪个?213 如何做一个合格的中学班干部 作文 快乐的星期天作文450字急急急! 世界上面积第四大的的国家是哪个? 我要竞选班干部的作文我竞选的是纪律委员 快乐的星期天作文 中国是世界第四大旅游国,那么前三个国家是哪三个国家? 成长故事作文400字 当地球遮住太阳的光线,月亮便走进了地球的阴影 他描述的是日食还是月食. 世界四大寓言是什么?(些写出哪个国家的)! 成长故事作文 400字 急 明天要交的 当月球运行到太阳和地球之间时,便会形成新月和月球遮住太阳形成日食的区别是什么 求种族灭绝的英语文章 300字左右 月亮离地球远还是太阳离地球远 成长故事作文及批注(500字) 急求英语300字美文三篇!老师要我们翻译, 快乐的味道是什么 如何酿醋我喜欢醋的味道 ,不知道怎么弄的, 如果要你写一篇作文题目是什么什么的滋味.你会用什么的滋味 关于体会快乐的滋味的作文 酿造醋和配制醋哪个好?去超市买醋,看到有酿造醋和配制醋两种,吃起来哪个更好呢? 解释“成长的味道”这个作文题的含义.有这么一个题目——以“成长的味道”为话题,写一篇800字左右的作文,我想要知道的是,从“成长的味道”这个话题,还可以引申出哪方面内容?除去“酸 作文 快乐的滋味600字补全题目在写不好意思题目打错了是______的滋味 地球离太阳有多远 作文题:初夏_______的味道要有大致的框架,最好是和足球有关的 快乐的滋味 作文 太阳离地球有多远 世界上有三大无酒精饮料,你知道是哪三种吗? 作文快乐的味道 请问地球离太阳有多远 地球离月球远还是离太阳远? 我想对你说》作文400字 我的成长故事,作文600字左右 火星,月球,地球,谁离太阳近 粮食酒精和无水乙醇有什么区别 太阳离地球到底有多远 一篇关于中国的环境问题的文章 要英文的急需一篇关于中国环境问题的英文文章 是高一新生的阅读范围 请各位帮帮忙啦``````` 成长的故事作文600字怎么写 关于竞选班干部的作文!急用! 根据这个写个300字的英文短文挺急的 拜托了In the western world, if a family member has got a cancer, his/her family members must tell him/her about it frankly. If not, it would be regarded illegal. But in Chinese culture, a common pra 关于感恩母爱的,《给妈妈的一封信》800字左右新年到了,要学会感恩,学校要交关于感恩母爱的作文-《给妈妈的一封信》,不希望是抄袭,自创!内容比较贴近实际(举几个生活中的例子) 请从营养与健康的角度阐述蒸馏酒,茶与咖啡消费的正确观点. 求有关环境问题的英文文章文章不用太长,2 3段话就好内容就是最近最热的环境问题单词量在高中到4级左右 感恩母亲——给母亲一封信 我的发现作文400字(要写清发现什么和发现的过程.是平时生活中的发现)
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn