1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > VB根据窗体自动调整窗体内控件大小 注:实用 可以直接引用

VB根据窗体自动调整窗体内控件大小 注:实用 可以直接引用

时间:2022-10-11 13:49:53

相关推荐

VB根据窗体自动调整窗体内控件大小  注:实用 可以直接引用

代码如下:

Option Explicit

Private ObjOldWidth As Long '保存窗体的原始宽度

Private ObjOldHeight As Long '保存窗体的原始高度

Private ObjOldFont As Single '保存窗体的原始字体比

Private Sub Form_Resize()

'确保窗体改变时控件随之改变

Call ResizeForm(Me)

End Sub

Private Sub Form_Load()

'在程序装入时必须加入

Call ResizeInit(Me)

End Sub

'模块

'在调用ResizeForm前先调用本函数

Public Sub ResizeInit(FormName As Form)

Dim Obj As Control

ObjOldWidth = FormName.ScaleWidth

ObjOldHeight = FormName.ScaleHeight

ObjOldFont = FormName.Font.Size / ObjOldHeight

On Error Resume Next

For Each Obj In FormName

Obj.Tag = Obj.Left & " " & Obj.Top & " " & Obj.Width & " " & Obj.Height & " "

Next Obj

On Error GoTo 0

End Sub

'按比例改变表单内各元件的大小,

'在调用ReSizeForm前先调用ReSizeInit函数

Public Sub ResizeForm(FormName As Form)

Dim Pos(4) As Double

Dim i As Long, TempPos As Long, StartPos As Long

Dim Obj As Control

Dim ScaleX As Double, ScaleY As Double

ScaleX = FormName.ScaleWidth / ObjOldWidth

'保存窗体宽度缩放比例

ScaleY = FormName.ScaleHeight / ObjOldHeight

'保存窗体高度缩放比例

On Error Resume Next

For Each Obj In FormName

StartPos = 1

For i = 0 To 4

'读取控件的原始位置与大小

TempPos = InStr(StartPos, Obj.Tag, " ", vbTextCompare)

If TempPos > 0 Then

Pos(i) = Mid$(Obj.Tag, StartPos, TempPos - StartPos)

StartPos = TempPos + 1

Else

Pos(i) = 0

End If

'根据控件的原始位置及窗体改变大

'小的比例对控件重新定位与改变大小

Obj.Move Pos(0) * ScaleX, Pos(1) * ScaleY, Pos(2) * ScaleX, Pos(3) * ScaleY

Obj.Font.Size = ObjOldFont * FormName.ScaleHeight

Next i

Next Obj

On Error GoTo 0

End Sub

摘自:网络整理

相关文章参考:

※关于三个概念:ActiveX、OLE和COM

※注册ActiveX控件的几种方法(转) 分享※

※VB 单击ListView控件某列表头进行排序

与控件相关文章:

※VB表格控件总览与例程分析※

※VB 设置控件边框颜色(如:List、Text、Picture)※

※VB控件注册 - 利用资源文件将dll、ocx打包进exe文件

※做VB的,经常注册和反注册OCX控件和DLL链

※VB表格控件总览与例程分析

※根据窗体自动调整窗体内控件大小 注:实用,可以直接引用

※用户控件制作讲解与实例

※VB制作OCX控件的步骤

※【引用】窗口处理技巧大全 vb(窗体控件)

※VB让控件可以当标题栏拖动

※VB 调用腾讯截图控件CameraDLL.dll

※VB表格控件总览与例程分析

※VB表格控件总览与例程分析

※☆Mp3Play.ocx控件让音乐之声响起来

※为系统加载右键注册控件选项【VB 注册控件】

※VB中MsFlexGrid控件的使用细则

※点击MSFlexGrid数据控件的标题进行数据排序

相关文章参考:

★VB查找替代字符串的函数

★VB换行气泡提示类

★VB/VBA通用路径选择对话框

★ASCII码表0-255完整版 附详细注释

★VB的KeyAscii

★VB取得TextBox、RichTextBox光标所在的行和列(支持汉字)

★VB取得TextBox、RichTextBox光标所在的行和列(支持汉字)

★VB如何实现Undo(撤消)功能

★VB计算文本文件的行数

★VB获取快捷方式原文件路径

★微软 Small Basic 简体中文版 已经发布了

★VB操作Excel 非常详细 [网摘]

★VB如何判断文件正被占用/已被打开

★VB添加listbox 的水平卷动轴

★VB打开资源管理器并指定文件

★VB根据窗体自动调整窗体内控件大小 注:实用,可以直接引用

★VB中的指针技术

★Visual Basic编程常见问题及解答(1)

★Visual Basic编程常见问题及解答(2)

★Visual Basic编程常见问题及解答(3)

★VisualBasic变量、常数和数据类型及过程概述

★VB6的后期绑定和前期绑定

★VB用户控件制作讲解与实例

★VB制作OCX控件的步骤

★VB中FSO的调用的两种方法

★用VB操作EXCEL

★VB判断文件及目录的存在性

★VB网站(最新、经典源代码、技术文章、基础知识)

★VB得到指定文件夹下的文件列表

★用VB产生随机任意大小文件挤满硬盘

★VB文件的读写操作

★VB创建超链接 打开指定网站的几种方法

★VB 源码 删除重复行程序 函数

★VB 计算自己程序段所用时间

★VB 获取路径名各部分 (获取文件路径,获取文件名,获取文件扩展名)自编

★几行VB代码拿下注册表

★VB 在浏览器中打开指定网址

★VB窗口置顶

★vb在 ListBox 之中点击右键弹出菜单

更多精彩>>>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。