小议VB程序优化

VB6中用Oracle数据控件访问Oracle(转自天极) [文章导读]安装完Oracle后,在D:/Oracle/Ora81/BIN/目录下会有oradc.ocx文件存在,VB可使用此控件访问Oracle数据库[正文]  系统环境:   1、操作系统:Windows 2000 Server  2、数据库: Oracle 8i R2 (8.1.6) 阅读详情
Visual Basic 作为一种高级编程语言,它也有着不可避免的缺点---开发出的应用程序运行速度慢。如果我们能够程序做一些优化,那么情况将会大大改善。要优化程序运行的实际速度,常用的方法有三种:

1.尽量避免使用 Variant 变量。由于VB不能确定 Variant 变量的具体类型,所以它会给该类型变量分配16个字节的空间,而且在用变量进行运算时还要考虑到数据类型的转换。这既占用内存,又影响了速度,会使涉及到复杂运算的程序慢。注意,一个变量的缺省类型就是 Variant,其它类型的变量要用Dim语句单独声明。

2.在遇到整型数据时尽量使用Long变量。因为Long变量是32位CPU的本机数据类型,所以处理速度会很快,尤其是在循环体中。

3.将控件的常用属性保存在变量中。一般控件存在于DLL或OCX这类的外部程序中。众所周知,调用DLL远比访问内存慢。所以对于那些放在循环体中的常用属性,如果将它们保存在变量中,那么速度将会有成百上千倍提升。

我们在编写程序时应注意到,在进行长时间等待操作时,可以做一些动画之类的效果,好让用户知道程序运行正常。下面是几个常用优化方法:

(1)使用 Splash 屏幕。也就是我们常见的欢迎窗口。大的应用程序在启动时,往往会主动或被动地载入一大堆DLL,这要花费很长时间。所以我们在启动时可以先显示一个简单的窗口,上面只放一些作者、版权之类的信息,在这个窗口的Form_Load事件中用Load方法读入那些最常用的窗体模块。这样,虽然实际等待的时间延长了,但用户所看到的屏幕总是变化的,所以感觉下程序启动加快了。而且由于常用窗体模块事先已载入内存,以后只需用Show方法来显示它,跳过了载入过程,在程序运行过程中也会很快的。

(2)使用Timer控件。由于Timer控件的出现,使得后台作业有了可能。我们可以在每次Timer事件中完成一小部分任务。这样,由于Timer中的事件能够在很短的时间内完成,用户一般查觉不到速度的变化。如果一定要在一个循环内完成某个任务,那么不要忘了用DoEvents来释放用户。

(3)使用进度条。要使用进度条,需要事先知道数据量,所以它很适合用于对已知数据的操作,如数据库的排序。

总之,优化程序要从自己、从用户等多方面考虑,使程序开发周期短,且高效易用。
从 on_event 到 lifespan:FastAPI 生命周期管理的旧方法与新方法对比与迁移 阅读详情

相关推荐

Lumerical官方案例、FDTD时域有限差分法仿真学习(十三)——多模干涉耦合器(MMI)

计算通过 1×2 端口多模干涉 (MMI) 耦合器的宽带传输和光损耗。 使用设备 S 参数在 INTERCONNECT 中创建 MMI 的紧凑模型。 它还展示了如何使用 CML 编译器提取这些参数以生成紧凑模型。 一、概述 了解模拟工作流程和关键结果 低损耗光合路器和分路器是基于 Mach-Zehnder 的光调制器的基本组件,并且是集成电路的关键组成部分。通过在输入/输出波导处使用线性锥形确保输入/输出波导的模式与干涉区域之间的

weixin_45719141的博客 1万+

VB.NET应用程序性能的优化 作者:Gordon Brown

介绍<!--google_ad_client = "pub-2883931001662191";/* 728x15, 创建于 08-5-8 */google_ad_slot = "7898632029";google_ad_width = 728;google_ad_height = 15;//--><script type="text/javascript"src

liu_binq63的专栏 1742

树莓派作为Modbus服务器:pymodbus配置全记录

手把手教你用树莓派部署Modbus服务器,核心基于pymodbus实现数据通信与设备控制,涵盖配置步骤与常见问题,适合工业自动化场景应用。

weixin_42510201的博客 755

VB程序的优化

一、减少加载窗体数目 每一个加载的窗体,无论可视与否,都要占据一定数量的内存(其数量随窗体上控件的类型和数量,以及窗体上位图的大小等的不同而变化)。只在需要显示时才加载窗体,不再需要时,卸载窗体(而不是隐藏窗体)。记住,任何对窗体的属性、方法或控件的引用,或对用 New 声明的窗体变量的引用,都会导致 Visual Basic 加载该窗体。 当使用 Unload 方法卸载窗体时,只能释放部分窗

思科网络 2178

手把手教你用EG2153搭建开关电源:SOP-8封装驱动芯片的5个设计技巧

本文详细介绍了使用EG2153自振荡半桥驱动芯片搭建开关电源的五个核心设计技巧。内容涵盖从深入理解芯片工作机制、频率编程计算误区、SOP-8封装的热管理方案,到死区时间评估与外部保护电路设计,以及实战调试与故障排查指南,旨在帮助工程师实现稳定可靠的小功率电源设计。

weixin_29200485的博客 377

2024年五大革新图像分割模型解析:架构创新与实战应用指南

本文深入解析2024年五大革新图像分割模型,包括SAM2、Mask2Former、DINOv2和Swin Transformer等,探讨其架构创新与实战应用。从多尺度处理、提示交互到自监督学习,这些模型在精度提升、效率优化和交互增强方面取得突破,广泛应用于医疗影像、工业质检和智慧城市等领域。

hadoop5ranger的博客 894

vb 优化

1.使用整数(Integer)和长整数(Long) 提高代码运行速度最简单的方法莫过于使用正确的数据类型了,也许您不相信,但是正确地选择数据类型能够大幅度提升代码的性能。大多数情况下,程序员能够将 Single ,Doule 和 Currency 类型的变量替换为 Integer  或 Long  类型的变量,因为 VB 处理 Integer 和 Long  的能力远远高于处理其他几种数据类型。

443

告别Docker Desktop!Colima在Mac上的5分钟极速安装与配置指南(M1芯片实测)

本文详细介绍了如何在Mac(尤其是M1芯片)上快速安装和配置Colima,作为Docker Desktop的免费替代品。通过优化配置和实战指南,帮助开发者提升容器运行效率,减少资源占用,实现丝滑的开发体验。

weixin_28839601的博客 445

优化VB.NET应用程序的性能(1)

(1) 整数除法运算符 /  和 /         / 比 / 快10倍 (如果是整数除法并且不需要保留小数)   (2) 赋值运算符 a +=b  和 a = a+b       += 快   (3) 串联运算符  & 和 +      用 & 快   (来源:http://www.devcity.net/newsletter/archive/devcity/devcity20040315.h

AntingZ的专栏 1843

复现论文报错解决

博主复现论文代码过程中遇到的各种报错及解决方案~

rellvera的博客 1059

即插即用篇 | 手把手教你 YOLOv11 添加注意力机制 | 适用于【检测任务】【分类任务】【分割任务】【关键点任务】| 20+ 种全打通!

即插即用篇 | 手把手教你 YOLOv11 添加注意力机制 | 适用于【检测任务】【分类任务】【分割任务】【关键点任务】| 20+ 种全打通!

Coding... 2831

小议分布式网络系统中的数据访问设计和优化

 摘 要摘要: 在基于局域网的大型分布式仿真和控制系统中,包括数据库服务器在内的各计算机之间的信息交互方案的设计是系统性能优异的关键,尤其是在计算机数量较多或待交互的单位时间信息量较大时更为重要。计算机间的信息交互涉及各机间的共享数据的读取、存贮和更新等方面的内容,需采取有效的系统规划、实时通讯和快速数据库访问等手段解决。本文全面论述了有关内容,给出了有效的解决方案。摘要:网络系统、 信息

monicaxiaoy的专栏 738

Chamfer Loss

ChamferLoss是一种常用于3D点云(pointcloud)处理的损失函数,特别是在点云生成和对齐任务中。它的目的是度量两个点集之间的相似度,特别是在点云重建、配准或生成等任务中,常用于优化模型使得生成的点云更接近真实的点云。

夜空中明亮的星的专栏 455

Vb.net 中条件分支语句

一、简单If条件语句使用在称之为分支结构的特殊语句块中的条件表达式控制了程序中哪些语句被执行以及什么样的执行次序执行。“If...Then”分支结构在程序中计算条件值,并根据条件值决定下一步执行的操作。最简单的“If...Then”分支结构可以只写在一行:    If Condition Then Statement[Else statement] 注意:“If...Then”分支结构用于给程

解释^哆餘嘚 2061

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

VB语言

重新回头看VB课本,在看过C#的视频之后,老师们经常说计算机的语言有很大的相似性,只要你学会精通一门计算机高级语言其他的高级语言就很容易的学会了,就像经历过的人学VB学一年,,NET学习一个月,C# 学习两个月,C++学习两个月,JAVA学习两个月基本的理论知识就了解了,通过项目练习积累经验你就完美的学会了编程。说说我的VB的学习,通过积累自己对VB有了现在的理解,虽然还有很多的东西不是知道。但是

放荡不羁爱自由 3万+

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

.NET程序的性能要领和优化建议

前几天在老赵的博客上看到,Bill Chiles (Roslyn 编译器的Program Manager)写了一篇文章叫做《Essential Performance Facts and .NET Framework Tips》。这篇文章是一个14页的pdf,当时我是在地铁上在Lumia手机上看的,觉得很是不错,这里也建议大家直接下载阅读原文,我这里试着翻译一下,以加深自己印象,后面也有一些思考,...

weixin_33743703的博客 382

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

如何优化VB程序

如何去优化你的VB程序帮助 1、如何去优化你的VB程序Visual Basic 作为一种高级编程语言,它也有着不可避免的缺点---开发出的应用程序运行速度慢。如果我们能够程序做一些优化,那么情况将会大大改善。要优化程序运行的实际速度,常用的方法有三种:1.尽量避免使用 Variant 变量。由于VB不能确定 Variant 变量的具体类型,所以它会给该类型变量分配16个字节的空间,而且在用变量

kyu16866的专栏 6465

[转]vb高效编程(优化)

 本文适合任何水平的vb编程人员。 一、减少加载窗体数目 每一个加载的窗体,无论可视与否,都要占据一定数量的内存(其数量随窗体上控件的类型和数量,以及窗体上位图的大小等的不同而变化)。只在需要显示时才加 载窗体,不再需要时,卸载窗体(而不是隐藏窗体)。记住,任何对窗体的属性、方法或控件的引用,或对用 New 声明的窗体变量的引用,都会导致 Visual Basic 加载该窗体。 当使用 U...

miaozk2006的专栏 249

用FlexGrid的EnterCell方法来实现控件可编辑

     在MSFLEXGRID控件中每一个CELL格的内容是不可以由用户直接编辑的但是我们可以通过一些小技巧来方便的实现这编辑功能来扩展MSFLEXGRID的应用(在实际应用中这是很常用的功能)。     你只需按下面的做即可轻松实现编辑MSFLEXGRID控件数据的功能     例在窗体上放一文本框text1,和一MSFLEXGRID控件flexgrid1加入下例代码Private Sub F

ToMKai 's World 2710

使MSHFlexGrid支持鼠标滚动

将以下代码写到公共模块中支持滚轮鼠标API---------------------------------    Public Const GWL_WNDPROC = (-4)    Public Const WM_COMMAND = &H111    Public Const WM_MBUTTONDOWN = &H207    Public Const WM_MBUTTONUP = &H

ToMKai 's World 1856
上一篇: 使MSHFlexGrid支持鼠标滚动
下一篇: 将MSFlexGrid控件的内容输出到文本
tomkai
博客等级 码龄24年 14粉丝 36原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值