Ⅰ VB递归算法
调用Test(3);
t=3,
t>=1成立,
调用Test(2);
t=2,
t>=1成立,
调用Test(1);
t=1,
t>=1成立,
调用Test(0);
t=0,
t>=1不成立,
函数返回值为0.
返回到Test(1),
执行余下部分:
for
i=3
to
1
step
-1
print
chr(asc("A")+i)
next
print
输出:
D
C
B
调用的Test(1)结束,
函数返回值1.
继续执行Test(2)的余下部分:
for
i=3
to
2
step
-1
print
chr(asc("A")+i)
next
print
输出:
D
C
调用的Test(2)结束,
函数返回值2.
继续执行Test(3)的余下部分:
同理输出:
D
调用的Test(3)结束,
函数返回值3.
最后,
执行
Print
Test(3)
的输出,
打印返回结果:
3
-----------
所以,
最后的结果是:
D
C
B
D
C
D
3
Ⅱ vb编程常用公式意思
Option Explicit
Const MAX_NUM = 60
Const MIN_NUM = 1
Const NUM_COUNT = 6
Const RESULT = 106
Dim num(NUM_COUNT) As Integer
Private Sub Command1_Click()
'在1~MAX_NUM间取所有NUM_COUNT个数的组合(不重复)
Debug.Print MIN_NUM & "~" & MAX_NUM & " 之间和为 " & RESULT & " 且不重复的" & NUM_COUNT & "个数有:"
Call PickNum(1, MIN_NUM)
End Sub
'获取一个数。iIndex为第几位数(1~NUM_COUNT);iBegin是该数的取值范围(MIN_NUM~MAX_NUM)
Private Sub PickNum(iIndex As Integer, iBegin As Integer)
Dim i As Integer
If iIndex = NUM_COUNT Then
'当前要获取的数已经是最后一位数了,说明数组已经填满,可以打印了
For i = iBegin To MAX_NUM
num(NUM_COUNT) = i
Call PrintNum
Next
Else
For i = iBegin To (MAX_NUM - NUM_COUNT + iBegin)
num(iIndex) = i
Call PickNum(iIndex + 1, i + 1)
Next
End If
End Sub
Private Sub PrintNum()
Static i As Integer
Static sum As Integer
Static s As String
'把数组打印出来前判断一下各位的和~~
sum = 0
For i = 1 To NUM_COUNT
sum = sum + num(i)
Next
If sum = RESULT Then
s = ""
For i = 1 To NUM_COUNT
s = s & num(i) & " "
Next
Debug.Print s
End If
End Sub
用递归可以~~但是执行效率很低~~而且我是输出到Debug窗口,能显示的行袱互递就郛脚店协锭茅数有限,所以数字太多时,前面的就被丢弃了,你可以换几个小一些的数看看效果~~
Ⅲ vb三种基本排序算法
三种基本排序算法(与哪种编程语言无关):
冒泡排序算法、选择排序算法、插入排序算法
Ⅳ VB计算一元多次方程
一元方程可以用牛顿插值法解。
可以找找相关资料。
下面是vb代码:
Private Sub Command1_Click()
a = 1
b = 1
c = 1
d = 1
e = 1
x = 0
absolution = 1
Do While absolution > 0.0000001
y = x + a * x ^ 5 + b * x ^ 9 + c * x ^ 13 - d * x ^ 17 - e
'一介导数
Y1 = 1 + 5 * a * x ^ 4 + 9 * b * x ^ 8 + 13 * c * x ^ 12 - 17 * d * x ^ 16
X1 = x - y / Y1
absolution = Abs(X1 - x)
x = X1
Loop
Text1 = X '解
End Sub
Ⅳ VB语句函数大全
(一)类型转换类函数
1. CType(X)
[格式]:
P=CBool(X)
' 将X转换为"布尔"(Boolean)类型
P=CByte(X)
' 将X转换为"字节"(Byte)类型
P=CCur(X)
' 将X转换为"金额"(Currency)类型
P=CDate(X)
' 将X转换为"日期"(Date)类型
P=CDbl(X)
' 将X转换为"双精度"(Double)类型
P=CInt(X)
' 将X转换为"整型"(Integer)类型
P=CLng(X)
' 将X转换为"长整型"(Long)类型
P=CSng(X)
' 将X转换为"单精度"(Single)类型
P=CStr(X)
' 将X转换为"字符串"(String)类型
P=Cvar(X)
' 将X转换为"变体型"(Variant)类型
P=CVErr(X)
' 将X转换为Error值
[ 范例 ]:
(1). CStr(13)+CStr(23)
' 数值转换成字符串后,用"+"号连接, 结果:1323
(2). CInt("12")+12
' 字符串转换成整型后与12相加, 结果:24
(3). P=CInt(True)
' 输出结果为-1
' 布尔值与数值的转换时要注意,布尔值只有True和False,其中True在内存中为-1,False存为0
(4). CBool(-0.001)
' 输出结果为True
' 将数值转换为布尔型时,等于0的数值将得到False,不等于0的数值得到True.
2. Int(X),Fix(X):取X的整数值
[格式]:
P=Int(X) ' 取<=X的最大整数值
P=Fix(X) ' 取X的整数部分,直接去掉小数
[范例]:
(1) Int(-54.6)
' 结果为-55,取<=-54.6的最大整数
(2) Fix(54.6)
' 结果为54,取整数并直接去掉小数
(二)常用数学函数
[格式]:
1. Abs(N) 取绝对值
例:Abs(-3.5) 结果:3.5
2. Cos(N) 余弦函数
例:Cos(0) 结果:1
3. Exp(N) e为底的指数函数
例:Exp(3) 结果:20.068
4. Log(N) 以e为底的自然对数
例:Log(10) 结果:2.3
5. Rnd[(N) 产生随机数
例:Rnd 结果:0--1之间的数
6. Sin(N) 正弦函数
例:Sin(0) 结果:0
7. Sgn(N) 符号函数
' 说明:取正负号。Y=Sgn(X) 既 X>0 则Y=1;X=0 则Y=0;X<0 则Y= -1
8. Sqr(N) 平方根
例:Sqr(9) 结果:3
9. Tan(N) 正切函数
例:Tan(0) 结果:0
10.Atn(N) 反切函数
例:Atn(0) 结果:0
[注意]:在三角函数中,以弧度表示。
(一)字符串类函数:
1. ASC(X),Chr(X):转换字符字符码
[格式]:
P=Asc(X) 返回字符串X的第一个字符的字符码
P=Chr(X) 返回字符码等于X的字符
[范例]:
(1)P=Chr(65)
'输出字符A,因为A的ASCII码等于65
(2)P=Asc("A")
'输出65
2. Len(X):计算字符串X的长度
[格式]:
P=Len(X)
[说明]:
空字符串长度为0,空格符也算一个字符,一个中文字虽然占用2 Bytes,但也算一个字符。
[范例]:
(1) 令X="" (空字符串)
Len(X) 输出结果为0
(2) 令X="abcd"
Len(X) 输出结果为4
(3) 令X="VB教程"
Len(X) 输出结果为4
3. Mid(X)函数:读取字符串X中间的字符
[格式]:
P=Mid(X,n)
由X的第n个字符读起,读取后面的所有字符。
P=Mid(X,n,m)
由X的第n个字符读起,读取后面的m个字符。
[范例]:
(1) X="abcdefg"
P=Mid(X,5)
结果为:P="efg"
(2) X="abcdefg"
P=Mid(X,2,4)
结果为P="bcde"
4. Replace: 将字符串中的某些特定字符串替换为其他字符串
[格式]:
P=Replace(X,S,R)
[说明]:将字符串X中的字符串S替换为字符串R,然后返回。
[范例]:
X="VB is very good"
P=Replace(X,good,nice)
输出结果为:P="VB is very nice"
5. StrReverse:反转字符串
[格式]:
P=StrReverse(X)
[说明]:
返回X参数反转后的字符串
[范例]:
(1)X="abc"
P=StrReverse(X)
输出结果:P="cba"
6. Ucase(X),Lcase(X):转换英文字母的大小写
[格式]:
P=Lcase(X)
'将X字符串中的大写字母转换成小写
P=Ucase(X)
'将X字符串中的小写字母转换成大写
[说明]:除了英文字母外,其他字符或中文字都不会受到影响。
[范例]:
(1) 令 X="VB and VC"
则Lcase(X)的结果为"vb and vc",Ucase(X)的结果为"VB AND VC"
7. InStr函数:寻找字符串
[格式]:
P=InStr(X,Y)
从X第一个字符起找出Y出现的位置
P=InStr(n,X,Y)
从X第n个字符起找出Y出现的位置
[说明]:
(1) 若在X中找到Y,则返回值是Y第一个字符出现在X中的位置。
(2) InStr(X,Y)相当于InStr(1,X,Y)。
(3) 若字符串长度,或X为空字符串,或在X中找不到Y,则都返回0。
(4) 若Y为空字符串,则返回0。
(二)日期时间类函数:
1. Year(X),Month(X),Day(X):取出年,月,日
[格式]:
P=Year(X)
取出X"年"部分的数值
P=Month(X)
取出X"月"部分的数值
P=Day(X)
取出X"日"部分的数值
[说明]:Year返回的是公元年,若X里只有时间,没有日期,则日期视为#1899/12/30#
2. Hour,Minute,Second函数:取出时,分,或秒
[格式]:
P=Hour(X)
取出X"时"部分的数值
P=Minute(X)
取出X"分"部分的数值
P=Second(X)
取出X"秒"部分的数值
[说明]:Hour的返回值是0---23之间
[范例]:
X=10:34:23
P=Hour(X)
Q=Minute(X)
R=Second(X)
则输出结果:P=10,Q=34,R=23
3. DateSerial函数:合并年,月,日成为日期
[格式]:DateSerial(Y,M,D)
其中Y是年份,M为月份,D为日期
[说明]:
(1) M值若大于12,则月份从12月起向后推算M-12个月;若小于1,则月份从1月起向后推算1-M个月。
(2) 若日期D大于当月的日数,则日期从当月的日数起,向后推算D-当月日数;若小于1,则日期从1日起向前推算1-D日。
[范例]:
P=DateSerial(2000,02,02)
则结果为P=2000/02/02
4.TimeSerial函数:合并时,分,秒成为时间
[格式]:P=TimeSerial(H,M,S)
其中H为小时数,M为分钟数,S为秒数
[说明]:推算原理同上面的DateSerial
[范例]:
P=TimeSerial(6,32,45)
结果为:P=6:32:45
5.Date,Time,Now函数:读取系统的日期时间
[格式]:
P=Date()
P=Time()
P=Now()
[说明]:这三个函数都无参数
[范例]:
若当前时间为2003年8月29日晚上19点26分45秒,则
P=Now()
结果为:P=2003-08-29 19:26:45
6.MonthName:返回月份名称
[格式]:P=MonthName(X)
[说明]:X参数可传入1---12,则返回值为"一月"、"二月"……,但是在英文Windows环境下,返回的是"January","February"……
[范例]:
P=MonthName(1)
则P="一月"
7.WeekdayName:返回星期名称
[格式]:P=WeekdayName(X)
[说明]:X参数可传入1—7,则返回值为"星期日","星期一"……,但是在英文windows环境下,返回的是"Sunday","Monday"……
[范例]:
P=WeekdayName(1)
结果为:P="星期日"
函数名称 函数功能
Cbool(string) 转换为布尔值
Cbyte(string) 转换为字节类型的值
Ccur(string) 转换为货币类值
Cdate(string) 转换为日前类型的值
Cdbl(string) 转换为双精度值
Cint(string) 转换为整数值
Clng(string) 转换为长整型的值
Csng(string) 转换为单精度的值
Cstr(var) 转换为字符串值
Str(var) 数值转换为字符串
Val(string) 字符串转换为数值
***************************************
Abs(nmb) 返回数子的绝对值
Atn(nmb) 返回一个数的反正切
Cos(nmb) 返回一个角度的余炫值
Exp(nmb) 返回自然指数的次方值
Int(nmb) 返回数字的整形(进位)部份 8.4-->9
Fix(nmb) 返回数字的整形(舍去)部份 8.4-->8
Formatpercent(表达式) 返回百分比
Hex(nmb) 返回数据的16进制数
Log(nmb) 返回自然对数
Oct(nmb) 返回数字的8进制数
Rnd 返回大于“0”而小于“1”的随机数
Sgn(nmb) 判断一个数字的正负号
Sin(nmb) 返回角度的正铉值
Sqr(nmb) 返回数字的二次方根
Tan(nmb) 返回一个数的正切值
Asc(string) 返回ASCII字符串
Chr(charcode) 根据字符代码返回字符
Instr(string,searchstr) 返回被搜索字符串的第一个字符位置,string是字符串,searchstr是被搜索的字符串
InstrRev(string,searchstr) 同上,只是从右面开始搜索
Lcase(var) 把字符串变为小写
Left(string,nmb) 从string中返回从左面开始的nmb个字符串
Len(string) 返回字符串的长度
Ltrim(string) 截去字符串左边的空格
Filter(inputstrings,value) 返回字符串数组的字集,Inputstrings是字符串组,value是在数组中寻找的字符
Rtrim(string) 截去字符串右边的空格
Trim(string) 截去字符串前后空格
Mid(string,start,len) 在string中返回从start位置开始的len个字符
Replace(string,find,withstr) 在字符串string中,用withstr来替换find字符串
Right(string,nmb) 从string中返回从右面开始的nmb个字符串
Space(nmb) 返回指定空格的字符串
StrComp(string1,string2) 比较两个字符串
Ucase(string) 把字符串变为大写
****************************************
Date() 返回当前系统日期
DateAdd(interval,nmb,date) 用一个基础时间返回指定增加了时间间隔的日期,interval是间隔类型,yyyy-年,m-月,d-日,h-小时,n-分。
DateDiff(interval,nmb1,nmb2) 返回两个时间间隔,interval的意思同上
Datevalue(date) 发挥Date中的日期部份
Day(date) 返回天数
FormatDatetime(date) 返回格式化为日期的表达式
Hour(time) 返回时间的小时数
Minute(time) 返回时间的分钟数
Month(date) 返回日期中的月份
Now() 返回系统的日期和时间
Second(time) 返回时间中的秒数
Time() 返回系统的当前时间
Weekday(date) 返回星期几
WeekdayName(date) 返回星期几的中文名
Year(date) 返回年份
IsArray(var) 判断一个变量是否是数组
IsDate(var) 判断一个变量是否是日期
IsNull(var) 判断一个变量是否为空
IsNumeric 判断表达式是否包含数值
IsObject(var) 判断一个变量是否是对象
TypeName(var) 返回变量的数据类型
************************************
Array(list) 返回数组
CreateObject(class) 创建一个对象
GetObject(pathfilename) 得到文件对象
Inputbox(prompt) 提供一个可供输入数据的对话框
LBound(arrayP) 返回数组的最小索引
Msgbox(string) 输出一个消息框
Split(liststr) 从一个列表字符串中返回一个一维数组
Ubound(array) 返回数组的最大索引
Ⅵ VB阶乘的算法
Function
Factorial(ByVal
i
As
Integer)
As
Long
Dim
s
As
Long
s
=
1
If
i>0
Then
Do
While
i>0
s
=
s
*
i
i
=
i
-
1
Loop
Factorial
=
s
Else
Factorial
=
0
End
If
End
Sub
当然也可以用递归,注意数据溢出。
调用可以用
ret
=
Factorial(3),此时
ret
=
6
Ⅶ 物性数据统计
4.1.5.1 误差统计
观测或测定误差以平均相对误差或均方误差表示:
1)平均相对误差为
油页岩物探概论
2)均方误差为
油页岩物探概论
式中:μ为平均相对误差;ε为均方误差;n为检查样品数;Ai为第i件样品一次测量结果;Bi为第i件样品另一次测量结果。
4.1.5.2 数据表建立
物性数据预处理:磁性数据的单位换算成国际单位,磁化率单位为×10-6SI,剩磁强度的单位为×10-3A/m。密度单位为×103kg/m3,电阻率单位为Ω·m,极化率单位为%。
综合野外、室内的物性工作,每个物性样品赋予地理、地质、物理属性,含样品号、坐标X、坐标Y、岩石(名称、亚类)、地层(组、群、统、系、界)或岩体单元、物性(密度、磁化率、剩磁强度、电阻率、极化率)等。所有的样品,组成工区内的物性数据表,提供物性数据统计、空间制图以及其他分析。
由高密度电阻率法测量获得的数据,亦赋予地质属性(地层、岩体),作为建立地质-物性模型的基础。
4.1.5.3 数理统计
岩石物性的统计计算方法引用Access的函数及《VB常用算法大全》(何光渝,2001,西安电子科技大学出版社)。统计参数包括:样品数量、几何均值、算术均值、最大值、最小值、标准差、离差系数、偏倚系数和峰凸系数。其中样品数量、最大值和最小值是由Access函数计算得到,其余根据《VB常用算法大全》 所得。计算公式如下:
油页岩物探概论
油页岩物探概论
其他参数也引用Surfer8.0软件提供的数据统计方法。
Ⅷ VB全排列算法。
新建一个工程,在窗体上新建一个text1,一个command1,把以下代码复制到工程中运行试试
OptionExplicit
PrivateList()AsString
Publicindex&,tmp$
PrivateSubCommand1_Click()
ReDimList(Len(Trim(Form1.Text1.Text)))
Forindex=1ToLen(Trim(Form1.Text1.Text))
List(index)=Mid(Form1.Text1.Text,index,1)
Nextindex
PermList,1,Len(Trim(Form1.Text1.Text))
EndSub
PrivateSubForm_Load()
Form1.AutoRedraw=True
EndSub
PublicFunctionSwap(ByRefNum1AsString,ByRefNum2AsString)'交换两个数
tmp=Num1
Num1=Num2
Num2=tmp
EndFunction
PublicFunctionPerm(ByRefListTar()AsString,ByValkAsLong,ByValmAsLong)'全排列函数
Dimi&
Ifk>mThen
Fori=1Tom
PrintListTar(i);
Nexti
Else
Fori=kTom
SwapListTar(k),ListTar(i)
PermListTar,k+1,m
SwapListTar(k),ListTar(i)
Nexti
EndIf
EndFunction
运行效果
Ⅸ vb字串加密算法(支持中文)
就按你的要求写一个例子吧,你可以在这个基础上改进算法:(例子里XOR的加密因子是固定的12345,正式的产品里应是动态的,并且长度更长、带有校验和防破解机制)
'简单字符串加密(参数为正常文本,返回加密文本,同时支持中文和英文)
private function StrEncrypt(byval sStr as string) as string
dim i as long
dim sRtn as string
for i=1 to len(sStr)
sRtn=sRtn & hex(asc(mid(sStr,i,1)) xor 12345) & " "
next i
StrEncrypt=sRtn
end function
'简单字符串解密(参数为被加密的文本,返回解密后的文本,同时支持中文和英文)
private function StrDecryption(byval sStr as string) as string
dim i as long
dim sChr as string
dim sCode as string
dim sRtn as string
for i=1 to len(sStr)
sChr=mid(sStr,i,1)
if sChr=" " then
sRtn=sRtn & chr(val("&H" & sCode) xor 12345)
sCode=""
else
sCode=sCode & sChr
end if
next i
StrDecryption=sRtn
end function
把这段代码复制到VB6里的调试结果:
? StrEncrypt("中国AB C")
E6E9 89C3 3078 307B 3019 307A
? StrDecryption("E6E9 89C3 3078 307B 3019 307A ")
中国AB C
Ⅹ vb常用函数
VB常用函数介绍
一、常用内部函数
在VB内部提供了大量函数。在这些函数中,有些是通用的。有些则与某种操作有关的。大体分成五类,分别是:转换函数、数学函数、日期函数、时间函数和随机函数。
(1)转换函数
函数名 功能
Int(x) 返回不大于自变量的最大整数。
Fix(x) 去掉一个浮点数的小数部分,保留其整数部分。
Hex(x) 把一个十进制数转换成为十六进制数。
Oct(x) 把一个十进制数转换成为八进制数。
Asc(x) 返回字符串中第一个字符的ASCII码。
Chr(x) 把值转换为相应的ASCII字符。
Str(x) 把值转换为一个字符串
Cint(x) 把小数部分四舍五入,转换为整数。
Ccur(x) 把值转换为货币类型,小数部分最多保留4位。
CDbl(x) 把值转换为双精度数值。
CLng(x) 把值小数部分四舍五入转换为长整型数值。
CSng(x) 把值转换为单精度数值。
CVar(x) 把值转换为变体类型值。
(2)数学函数
函数名 功能
Sin(x) 返回正弦值。
Cos(x) 返回余弦值。
Tan(x) 返回正切值。
Atn(x) 返回反正切值。
Abs(x) 返回绝对值。
Sgn(x) 返回自变量的符号。即:
值为负数时,函数返回-1
值为0时,函数返回0
值为正数时,函数返回1
Sqr(x) 返回自变量x的平方根,自变量必须大于或等于0。
Exp(x) 返回以e为底数,以x为指数的值,即求e的x次方。
(3)日期函数
函数名 功能
Day(Now) 返回当前的日期。
WeekDay(Now) 返回当前的星期。
Month(Now) 返回当前的月份。
Year(Now) 返回当前的年份。
(4)时间函数
函数名 功能
Hour(Now) 返回小时(0~23)。
Minute(Now) 返回分钟(0~59)。
Second(Now) 返回秒(0~59)。
(5)随机函数
Rnd(x) 产生一个0~1之间的单精度随机数
Rnd函数可以产生随机数,当一个应用程序不断地重复使用随机数时,同一序列的随机数会反复出现,用Randomize语句可以消除这种情况。
二、字符串函数
(1)删除空白字符函数
函数名 功能
LTrim(字符串) 去掉“字符串”左边的空白字符;
RTrim(字符串) 去掉“字符串”右边的空白字符;
Trim(字符串) 去掉“字符串”两边的空白字符;
(2)字符串截取函数
①左部截取
格式:Left(字符串,n)
返回字符串的前n个字符(n≥0)。
②中部截取
格式:Mid(字符串,p,n)
从第P个字符开始,向后截取n个字符(P>0,n≥0)。函数的第三个自变量可以省略。在省略的情况下,将从第二个自变量指定的位置向后截取到字符串的末尾。
③右部截取
格式:Right(字符串,n)
返回字符串最后n个字符(n≥0)。
(3)字符串长度测试函数
格式:Len(字符串)Len(变量名)
用Len函数可以测试字符串的长度,也可以测试变量的存储空间。
(4)String函数
格式:String(n,ASCII码) String(n,字符串)
返回由n指定个数组成的字符串。第二个自变量可以使用ASCII码,也可以是字符串。
(5)空格函数
格式:Space(n)
返回n个空格。
(6)字符串匹配函数
格式:InStr([首字符位置,]字符串1,字符串2 [,n])
在函数中“字符串1”中查找“字符串2”,如果找到了,则返回“字符串2”的第一个字符的位置。若为字符串首字符,则位置为1。
说明:
①“字符串2”的长度限于65535个字符内。
②“首字符位置”是可选项。如果含有“首字符位置”,则从该位置开始查找,否则从“字符串1”的起始位置开始查找。“首字符位置”是一个长整数。
③函数的最后n是可选项,类型为整型数,用来指定字符串比较。取范围是:0、1、2。
为0使用二制进比较,区分字母的大小写;
为1比较时忽略大小写;
为2则基于数据库中包含的信息进行比较(限于Access数据库)。
(7)字母大小写转换
格式:Ucase(字符串)’小写字母转大小字母。
Lcase(字符串)’大写字母转换为小写字母。
三、MsgBox函数
MsgBox函数的格式如下:
MsgBox(msg [,Type][,Title][,HelpFile,Context])
①②③ ④
函数共有5个参数,除①参数外,其余都是可选参数。
①msg是字符串类型,长度限制为1024字符。超出字符会被自动截取。
②type是一个整数值或符号常量,用来控制在对话框内显示的按钮、图标的类型。参数值由四类数值相加产生,这四类数值或符号常量分别表示按钮的类型、显示图标的种类、活动按钮的位置及强制返回。
常数 值 描述
vbOKOnly 0 只显示 OK 按钮。
VbOKCancel 1 显示 OK 及 Cancel 按钮。
VbAbortRetryIgnore 2 显示 Abort、Retry 及 Ignore 按钮。
VbYesNoCancel 3 显示 Yes、No 及 Cancel 按钮。
VbYesNo 4 显示 Yes 及 No 按钮。 VbRetryCancel 5 显示 Retry 及 Cancel 按钮。
VbCritical 16 显示 Critical Message 图标。
VbQuestion 32 显示 Warning Query 图标。
VbExclamation 48 显示 Warning Message 图标。
VbInformation 64 显示 Information Message 图标。vbDefaultButton1 0 第一个按钮是缺省值。
vbDefaultButton2 256 第二个按钮是缺省值。
vbDefaultButton3 512 第三个按钮是缺省值。
vbDefaultButton4 768 第四个按钮是缺省值。vbApplicationModal 0 应用程序强制返回;应用程序一直被挂起,直到用户对消息框作出响应才继续工作。
vbSystemModal 4096 系统强制返回;全部应用程序都被挂起,直到用户对消息框作出响应才继续工作。
vbMsgBoxHelpButton 16384 将Help按钮添加到消息框
VbMsgBoxSetForeground 65536 指定消息框窗口作为前景窗口
vbMsgBoxRight 524288 文本为右对齐
vbMsgBoxRtlReading 1048576 指定文本应为在希伯来和阿拉伯语系统中的从右到左显示
vbSystemModal 4096 系统强制返回;全部应用程序都被挂起,直到用户对消息框作出响应才继续工作。
Type参数由上表的四类数值组成,原则是:从每一类中选择一个值(仅仅一个值,不得重复),把这几个值加在一起就是Type参数的值(一般情况下,只需要使用前三类)。
示例:MsgBox “是否暂停打印!”,16,”提示”
Type参数为16分解成:
16=0+16+0 显示“确定”按钮(0)+“暂停”图标(16)+默认按钮为“确定”(0)MsgBox”是否退出程序。”,35,”退出”
Type参数为35分解成:
35=3+32+0 显示“是、否、取消”3个按钮(3)+“?”图标(32)+ 默认按钮(0)③Title是一个字符串,用来显示对话框的标题。
④HelpFile、Context : HelpFile是一个字符串变量或字符串表达式,用来表示帮助文件的名字,Context是一个数值变量或表达式,用来表示相关帮助主题的帮助目录号。
MsgBox函数的返回值是一个整数,这个整数与所选择的命令按钮相关。
返回值参数表:
常数 值 描述
vbOK 1 OK
vbCancel 2 Cancel
vbAbort 3 Abort
vbRetry 4 Retry
vbIgnore 5 Ignore
vbYes 6 Yes
vbNo 7 No
示例:Dim Tmp as long
Tmp=MsgBox(”是否退出程序。”,35,”退出”)
Msgbox “你选择的按钮值是:”&Tmp