1、模块代码:
'标准模块声明写入(自定义类型) Type cp wp As Single hp As Single tp As Single lp As Single fp As Single End Type Declare Function GetWindowsDirectory Lib "kernel32" Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long '屏幕尺寸 Private Declare Function GetSystemMetrics32 Lib "user32" _ Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long Public ap() As cp '定义窗体数组 '屏幕宽 Function ScreenWidth() As Long ScreenWidth = GetSystemMetrics32(0) * 15 End Function '屏幕高,去除底部状态栏高度 Function ScreenHeight() As Long ScreenHeight = (GetSystemMetrics32(1) - 40) * 15 End Function Public Function MyGetWinDirectory() As String Dim sBuffer As String Dim lSize As Long sBuffer = String(255, 0) lSize = GetWindowsDirectory(sBuffer, Len(sBuffer)) sBuffer = Left(sBuffer, lSize) sBuffer = sBuffer + "\" MyGetWinDirectory = sBuffer End Function '定义窗体过程 Public Sub GetControlsSize(ByVal fm As Form) On Error GoTo uerror '跳过无width属性控件 With fm For i = 0 To .Controls.Count - 1 ap(i).wp = .Controls(i).Width / .ScaleWidth ap(i).hp = .Controls(i).Height / .ScaleHeight ap(i).lp = .Controls(i).Left / .ScaleWidth ap(i).tp = .Controls(i).Top / .ScaleHeight ap(i).fp = .Controls(i).Font.Size / (.Controls(i).Width * .Controls(i).Height) Next i End With Exit Sub uerror: Resume Next End Sub
2、窗体代码
'加载窗体 Private Sub Form_Load() '获取每个控件大小比例 On Error GoTo uerror ReDim ap(0 To Me.Controls.Count - 1) uerror: Resume Next GetControlsSize Me '窗口最大化 Me.Left = 0 Me.Top = 0 Me.Width = ScreenWidth Me.Height = ScreenHeight End Sub '窗体尺寸改变时 Private Sub Form_Resize() Dim i As Integer On Error GoTo uerror For i = 0 To Controls.Count - 1 Controls(i).Move ap(i).lp * Me.ScaleWidth, ap(i).tp * Me.ScaleHeight, ap(i).wp * Me.ScaleWidth, ap(i).hp * Me.ScaleHeight If Not Me.Controls(i).Name Like "ListView*" Then Controls(i).Font.Size = ap(i).fp * (Controls(i).Width * Controls(i).Height) End If Next i Exit Sub uerror: Resume Next End Sub
转自CSDN
打赏
收藏
点赞
查看更多有关于 #VB#窗体初始#最大化#改变窗体大小#自动缩放#控件#字体 的文章。
转载请注明来源:VB窗体初始最大化和改变窗体大小自动缩放控件及字体
本文永久链接地址:https://aww255.com/post/816.html
- 栏目导航
- 最新文章
-
-
Win10系统添加开机启动项的步骤
右击开始点运行或按下Win+R,弹出运行窗口输入shell:startup点确定跳出这个文件夹。C:\Users\Adm...
-
麒麟系统命令行常用快捷键介绍
基本快捷键如下:Ctrl+C:终止当前正在运行的命令。当命令卡住或不想继续执行时,可以使用此快捷键强制终止。Ctrl...
-
银河麒麟桌面操作系统进不去系统怎么备份用户数据 Livecd备份数据教程
编写人:张展鹏编写日期:2023/11/27一.操作前准备准备好系统盘和存放数据的光盘或者u盘(有网络的机器登录网页邮箱...
-
七类网线水晶头接法制作步骤教程图解
技发展越来越迅速,我们目睹了综合布线行业的更新迭代,最开始常用的五类线、超五类线渐渐被六类线、超六类、七类线所取代,今天...
-
Win10安装打印机驱动程序失败提示“试图将驱动程序添加到存储区时遇到问题”解决方法
一、问题描述:在安装打印机驱动时,出现错误提示“试图将驱动程序添加到存储区时遇到问题”。多次尝试解决未果,经过多方查找并...
-
- 热门文章
-
-
国产麒麟系统开机没有网络需要点一下这个设置
问题描述: 一台国产电脑网线连接正常,打开网页后显示无法访问,那么是...
-
苹果MAC系统安装Alien Skin Eye Candy 软件 提示“已损坏,无法打开”,处理方法
安装 EyeCandy7installer已损坏,无法打开。您应该推出磁盘映像。 共用两步一...
-
Win10安装打印机驱动程序失败提示“试图将驱动程序添加到存储区时遇到问题”解决方法
一、问题描述:在安装打印机驱动时,出现错误提示“试图将驱动程序添加到存储区时遇到问题”。多次尝试解决未果,经过多方查找并...
-
解决打印作业滞留在打印队列中的问题 (Windows)
重置Windows打印环境 1.停止打印后台处理程序。2.关闭打印机电源。 &nb...
-
电脑配置如何使用命令查看
我们想要查看电脑的配置,是不是都是“此电脑(计算机)”右键属性查看的,如果想查看更详细的软硬件信息就看不到了,但是我们可...
-
- 最近发表
-
- 震旦 AD459 559拆装 原理 代码 中文维修手册
- 爱普生投影仪EB-S7 S8 X7 X8 W7 W8 EH-TW450英文维修手册
- 理光复印机常见故障代码及解决方法SC542、SC554-01、SC672-00、SC899、SC3503
- 柯美SD-510装订折叠对不齐问题解决方案
- 理光复印机跳SC681故障代码-出现黑色条纹-卡纸频繁
- 一键清除打印机批处理
- 富士胶片 C2450 出现代码:045-399故障分析案列分享
- 富士胶片 黑白机 4570 / 5570 出现代码:005-128 故障分析案例分享
- 富士胶片 C2450机器下粉电机测试代码及主板连接线路图
- 富士胶片C2450 机器出现错误代码:062-393 故障分析
-
叶灵(1)工程复印机(2)M126a(1)降级程序(1)excel表格(1)灯闪(1)佛语(1)兄弟清零(1)MV(1)DPC2255(1)吃豆人(1)护眼软件(1)夏普(47)js 复制功能(1)绘画辅助(1)3541(1)OKI(10)Bandicam(1)大奉打更人(1)HP254(1)WF7511(1)Delicious Retouch 5(1)解决方法(3)睡眠(13)AI(1)恢复程序(1)TSC(1)H.265(1)专题党课讲稿(1)报错代码(1)控件(2)屏幕旋转(1)升级失败(1)一键共享(2)Photo(1)输稿器(2)72630(1)L5728DW(2)虚拟机(1)音标发音(1)更换传输卷(1)报错 01b3b8e6(1)富士施乐(3)联想故障灯(1)超级惊悚直播(1)傲软(2)1005c(1)IP2780(1)模板(2)禁止更新(1)
发表评论 已有 0 评论