此文中通过例子介绍了vb中常用的几种函数
1.replace函数
返回值由原字符串为替换特定字符后的字符串。
用法:replace(原字符串,查找的字符串,用来替换的字符串)
例子:
private sub form_load()
text1.text="hello wold"
end sub
private sub comman1_click
rem 举个例子,当按下command1的时候
rem 将text1.text的内容中word替换成world
text1.text=replace(text1.text,"word","world")
end sub
2.command函数
这个函数甚至可以做到不同exe间的参数,返回值为外部启动exe的参数。
例子1:
我们在外部使用cmd,通过 start 1.exe 福州机电学校 启动程序 cmd1的值就会是"福州机电学校"。
'1.exe源码
private sub form_load
cmd1=command()
end sub
例子2:
我们也可以通过这个函数模拟文件被打开,在windows中文件被拖入exe 运行exe的默认参数就会是文件路径。
在外部我们将文件拖入exe,被拖入文件末尾就会被写入hello world字符串。
private sub form_load
filepath=command()
Open filepath For append As #1
print #1,"hello world"
close #1
end sub
3.split函数 && 4.ubound函数
ubound函数是用来获取数组个数的,返回值为数组的个数。
split和它的英文名(分裂一样),这个函数是用来分割字符串的。他的返回值为分割后的数据组成的以0作为最开始角标的数组
用法:需要声明一个数组变量
常用数组变量名=split(要分割的字符串,以什么字符串作为分割字符串的依据)
例子:我们可以用此方法进行外部参数的处理,假设在外部的参数为-a-b-c,运行结果为分别出现消息为1、2、3的对话框
private sub cmd_check(command1 as string)
dim cmd1 as string
cmd1=split(command,"-")
for i=0 to ubound(cmd1) -1
msgbox cmd1(i)
next
end sub
private sub form_load
cmd_check(command())
end sub
5.dir函数 && 6.filelen函数 && 7.kill函数
dir函数:
用来确定文件或文件夹是否存在,若返回值不为空则代表文件或文件夹存在。
基本用法:dir(路径,类型)
filelen函数:
这个函数返回值为文件的大小
基本用法filelen(路径),数据单位是字节
kill函数
主要用来删除文件,貌似在vb没有返回值,更多直接用到语句
基本用法:kill(路径)
举例:如果工作路径下1.txt文件存在且长度大于2000字节,就删除文件。
private sub command1_click
if dir(app.path+"\1.txt") <> "" then
if filelen(app.path+"\1.txt") > 2000 then
kill app.path+"\1.txt" '这是语句
end if
end if
end sub
8.instrrev函数
这个函数与instr函数类似,都是用来查找字符串的,区别在于这个函数是从末尾开始算起 而instr是从前开始算起。
基本用法:instrrev(原字符串,要查找的字符串)
例如:我们可以用这个函数从文件名获取文件后缀
如以下代码,filetype的值为txt
public sub form_load()
file="1.1.txt"
filetype=mid(file,instrrev(file,".")+1)
end sub
9.shell函数
这个函数用于运行外部程序,返回值是程序pid
基本用法shell 执行的exe,以什么样的方式来运行
第二个参数不选则为不显示,没有焦点的方式运行
例子:运行cmd 删除d盘的1.txt文件
private sub form_load
filepath="D:\1.txt"
shell "cmd /c del" & chr(32) & filepath
end sub
创建函数的方法:需要用到关键字function
private:创建的是私有函数
public:创建的是公有函数(可省略)
用法private function 函数名(参数一 as 类型,参数二 as 类型,参数3 as 类型)
参数关键字:
在传递的参数前加ByVal代表值传递
在传递的参数前加ByRef代表引用传递
可选参数可以通过Optional关键字标识
函数不同于过程,必须要有返回值
例子:
function addition1(number1 as long,number2 as long)
addition1=number1+number2
end function
private sub form_load()
value1=addtion1(me.width,me.height)
end sub
dll中文名为动态链接库,它就是由一个个过程和函数的组成的。在vb选activity dll就是写动态链接库,生成后工程-引用找到生成的exe就可以直接用了(在非本机中需要使用命令行注册dll才能正常使用,注册方法使用regsvr命令行 用法 regsvr32 dll文件名,需要管理员权限)
另外无论是过程名、函数名还是变量名都是支持中文的。不考虑效率的情况下,使用中文函数进行开发是完全可以做到的。