vb程序设计实例代码,用VB设计一个收款计算程序,代码咋编写啊?
vb程序设计实例代码,用VB设计一个收款计算程序,代码咋编写啊?详细介绍
本文目录一览: (vb程序设计)求代码:设计一个运行界面如下图所示的程序,要求单击单选按钮、复选框……
Private Sub Check1_Click()
If Check1.Value Then
Text1.Font.Bold = True
Else
Text1.Font.Bold = False
End If
End Sub
Private Sub Check2_Click()
If Check2.Value Then
Text1.Font.Italic = True
Else
Text1.Font.Italic = False
End If
End Sub
Private Sub Check3_Click()
If Check3.Value Then
Text1.Font.Underline = True
Else
Text1.Font.Underline = False
End If
End Sub
Private Sub Combo1_Click()
Text1.Font.Name = Combo1.Text
End Sub
Private Sub Command1_Click()
End
End Sub
Private Sub Form_Load()
Dim i As Integer
For i = 0 To Screen.FontCount - 1
Combo1.AddItem Screen.Fonts(i)
Next
Combo1.ListIndex = 0
For i = 6 To 40 Step 2
Combo2.AddItem i
Next
Combo2.ListIndex = 12
Text1.Font.Size = Combo2.Text
End Sub
Private Sub Option1_Click()
Text1.ForeColor = vbBlack
End Sub
Private Sub Option2_Click()
Text1.ForeColor = vbRed
End Sub
Private Sub Option3_Click()
Text1.ForeColor = vbBlue
End Sub
如何编写高质量的VB代码
简介:
本文描述了如何通过一些技术手段来提高vb代码的执行效率。这些手段可以分为两个大的部分:编码技术和编译优化技术。在编码技术中介绍了如何通过使用高效的数据类型、减少外部引用等编程手段来提高代码执行速度,减少代码消耗的系统资源。在编译优化技术中介绍了如何正确地利用vb提供的编译选项对在编译时最后生成的可执行文件进行优化。
前言
什么是一个高效的软件?一个高效的软件不仅应该比实现同样功能的软件运行得更快,还应该消耗更少的系统资源。这篇文章汇集了作者在使用vb进行软件开发时积累下来的一些经验,通过一些简单的例子来向你展示如何写出高效的vb代码。其中包含了一些可能对vb程序员非常有帮助的技术。在开始之前,先让我陈清几个概念。
让代码一次成型:在我接触到的程序员中,有很多人喜欢先根据功能需求把代码写出来,然后在此基础上优化代码。最后发现为了达到优化的目的,他们不得不把代码再重新写一遍。所以我建议你在编写代码之前就需要考虑优化问题。
把握好优化的结果和需要花费的工作之间的关系:通常当完成了一段代码,你需要检查和修改它。在检查代码的过程中,也许你会发现某些循环中的代码效率还可以得到进一步的改进。在这种情况下,很多追求完美的程序员也许会立马修改代码。我的建议是,如果修改这段代码会使程序的运行时间缩短一秒,你可以修改它。如果只能带来10毫秒的性能改进,则不做任何改动。这是因为重写一段代码必定会引入新的错误,而调试新的代码必定会花掉你一定的时间。程序员应该在软件性能和开发软件需要的工作量之间找一个平衡点,而且10毫秒对于用户来说也是一个不能体会到的差异。
在需要使用面向对象方法的时候尽量使用它;vb提供的机制不完全支持面向对象的设计和编码,但是vb提供了简单的类。大多数人认为使用对象将导致代码的效率降低。对于这一点我个人有些不同的意见;考察代码的效率不能纯粹从运行速度的角度出发,软件占用的资源也是需要考虑的因素之一。使用类可以帮助你在整体上提升软件的性能,这一点我会在后面的例子中详细说明。
当你编写vb代码的时候,希望你能把上面几点作为指导你编码的原则。我把文章分为两个部分:如何提高代码的运行速度和编译优化。
如何提高代码的运行速度
下面的这些方法可以帮助你提高代码的运行速度:
1. 使用整数(integer)和长整数(long)
提高代码运行速度最简单的方法莫过于使用正确的数据类型了。也许你不相信,但是正确地选择数据类型可以大幅度提升代码的性能。在大多数情况下,程序员可以将single,double和currency类型的变量替换为integer或long类型的变量,因为vb处理integer和long的能力远远高于处理其它几种数据类型。
在大多数情况下,程序员选择使用single或double的原因是因为它们能够保存小数。但是小数也可以保存在integer类型的变量中。例如程序中约定有三位小数,那么只需要将保存在integer变量中的数值除以1000就可以得到结果。根据我的经验,使用integer和long替代single,double和currency后,代码的运行速度可以提高将近10倍。
2. 避免使用变体
对于一个vb程序员来说,这是再明显不过的事情了。变体类型的变量需要16个字节的空间来保存数据,而一个整数(integer)只需要2个字节。通常使用变体类型的目的是为了减少设计的工作量和代码量,也有的程序员图个省事而使用它。但是如果一个软件经过了严格设计和按照规范编码的话,完全可以避免使用变体类型。
在这里顺带提一句,对于object对象也存在同样的问题。请看下面的代码:
dim fso
set fso = new scripting.filesystemobject
或
dim fso as object
set fso = new scripting.filesystemobject
上面的代码由于在申明的时候没有指定数据类型,在赋值时将浪费内存和cpu时间。正确的代码应该象下面这样:
dim fso as new filesystemobject
3. 尽量避免使用属性
在平时的代码中,最常见的比较低效的代码就是在可以使用变量的情况下,反复使用属性(property),尤其是在循环中。要知道存取变量的速度是存取属性的速度的20倍左右。下面这段代码是很多程序员在程序中会使用到的:
dim intcon as integer
for intcon = 0 to ubound(somvar())
text1.text = text1.text & vbcrlf & somevar(intcon)
VB程序设计代码
将你的textbox控件定义成数组控
件,然后运行以下代码:
Private
Sub
command1_click()这
个是保存Text1的内容到本身目录
下.
Open
App.Path
\123.txt
For
Append
As
#1
Print
#1,
Text1(0).Text
Print
#1,
Text1(1).Text
Print
#1,
Text1(2).Text
Close
#1
End
Sub
Private
Sub
Form_Load()
Dim
i
As
Integer
Open
App.Path
\123.txt
For
Input
As
#1
Do
While
Not
EOF(1)
Line
Input
#1,
ss
Text1(i).Text
=
ss
i
=
i
+
1
Loop
Close
#1
End
Sub
将你的textbox控件定义成数组控
件,然后运行以下代码:
Private
Sub
command1_click()这
个是保存Text1的内容到本身目录
下.
Open
App.Path
\123.txt
For
Append
As
#1
Print
#1,
Text1(0).Text
Print
#1,
Text1(1).Text
Print
#1,
Text1(2).Text
Close
#1
End
Sub
Private
Sub
Form_Load()
Dim
i
As
Integer
Open
App.Path
\123.txt
For
Input
As
#1
Do
While
Not
EOF(1)
Line
Input
#1,
ss
Text1(i).Text
=
ss
i
=
i
+
1
Loop
Close
#1
End
Sub
【vb编程 求代码】设计一个运行界面如图所示的程序,要求输入购物金额,通过单选按钮选择不同的折扣率?
代码大约长这样,自己完善一下。
Private Sub Command1_Click()
Dim a#, b#, c#
a = Val(Text1)
If Option1 Then b = a * 0.8
If Option2 Then b = a * 0.9
If Option3 Then b = a
If a >= 1000 And Check1 Then c = b / 12
Label1.Caption = b & vbCrLf & c
End Sub
用VB编写一个计算器程序的代码
控件:text,com1,com2三种
属性设置:无
命令如下:
通用命令
Option Explicit
Dim v As Boolean
Dim s As Integer
Dim x As Double
Dim y As Double
按钮一的命令
Private Sub Command1_Click(Index As Integer)
If Form1.Tag = "s" Then
If Index = 10 Then
Text1.Text = "0"
Else
Text1.Text = Command1(Index).Caption
End If
Form1.Tag = ""
Else
Text1.Text = Text1.Text & Command1(Index).Caption
End If
End Sub
按钮二的命令
Private Sub Command2_Click(Index As Integer)
Form1.Tag = "s"
If v Then
x = Val(Text1.Text)
v = Not v
Else
y = Val(Text1.Text)
Select Case s
Case 0
Text1.Text = x + y
Case 1
Text1.Text = x - y
Case 2
Text1.Text = x * y
Case 3
If y <> 0 Then
Text1.Text = x / y
Else
MsgBox ("不能以0为除数")
Text1.Text = x
v = False
End If
Case 4
y = 0
v = False
End Select
x = Val(Text1.Text)
End If
s = Index
End Sub
编辑一个有0~9、小数点、加减乘除的计算器
用一个窗体就可以实现,你可以试试
Option Explicit
Dim strNumber As String
Dim strPoint As String
Dim dblNum1 As Double
Dim intOperator As Integer
'清除结果
Private Sub cmdGT_Click()
txtDisplay.Text = "0."
strNumber = ""
strPoint = "."
intOperator = 7
End Sub
'输入数字
Private Sub cmdNumber_Click(Index As Integer)
strNumber = strNumber & cmdNumber(Index).Caption
txtDisplay.Text = strNumber & strPoint
End Sub
Private Sub cmdOnOff_Click()
End
End Sub
'运算过程
Private Sub cmdOperator_Click(Index As Integer)
Dim dblnum2 As Double
'是第一次单击运算符时,将输入的值先赋给第一个数,否则赋值给第二个数进行运算
If intOperator = 7 Then
dblNum1 = CDbl(txtDisplay.Text)
Else
dblnum2 = CDbl(Val(txtDisplay.Text))
'根据输入的符号进行运算
'求普通运算
Select Case intOperator
Case 0
dblNum1 = dblNum1 + dblnum2
Case 1
dblNum1 = dblNum1 - dblnum2
Case 2
dblNum1 = dblNum1 * dblnum2
Case 3
If dblnum2 <> 0 Then
dblNum1 = dblNum1 / dblnum2
Else
MsgBox "除数不能为“0”!请重新输入除数。", vbOKOnly + vbInformation, "除零错误"
Index = intOperator
End If
Case 6
dblNum1 = dblNum1 * dblnum2 / 100
End Select
End If
'取得当前输入的运算符,以做下次运算
intOperator = Index
strNumber = ""
txtDisplay = CStr(dblNum1)
'判断是否为文本框中的数字加点
If Not txtDisplay Like "*.*" Then
txtDisplay.Text = txtDisplay.Text & "."
End If
End Sub
Private Sub cmdOtherOper_Click(Index As Integer)
Dim dblNum As Double
'求平方根,平方,
dblNum = CDbl(Val(txtDisplay.Text))
Select Case Index
Case 0
'验证数据是否有效
If dblNum >= 0 Then
txtDisplay.Text = CStr(Sqr(dblNum))
Else
MsgBox "负数不能开平方根!", _
vbOKOnly + vbCritical, "开平方根错误"
End If
Case 1
txtDisplay.Text = CStr(dblNum ^ 2)
End Select
'判断是否为文本框中的数字加点
If Not txtDisplay Like "*.*" Then
txtDisplay.Text = txtDisplay.Text & "."
End If
End Sub
Private Sub cmdPoint_Click()
strNumber = strNumber & strPoint
strPoint = ""
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
'使被按下的数字键的对应按钮取得焦点
Select Case KeyCode
Case 48 To 57
cmdNumber(KeyCode - 48).SetFocus
Case 96 To 105
cmdNumber(KeyCode - 96).SetFocus
Case Else
'使按下的符号键对应的按钮取得焦点
If KeyCode = 107 Or (Shift = vbShiftMask And KeyCode = 187) Then
cmdOperator(0).SetFocus
cmdOperator_Click (0)
ElseIf KeyCode = 109 Or KeyCode = 189 Then
cmdOperator(1).SetFocus
cmdOperator_Click (1)
ElseIf KeyCode = 106 Or (Shift = vbShiftMask And KeyCode = 56) Then
cmdOperator(2).SetFocus
cmdOperator_Click (2)
ElseIf KeyCode = 111 Or KeyCode = 191 Then
cmdOperator(3).SetFocus
cmdOperator_Click (3)
ElseIf KeyCode = 13 Then
cmdOperator(7).SetFocus
cmdOperator_Click (7)
ElseIf KeyCode = 8 Then
cmdGT.SetFocus
Call cmdGT_Click
End If
End Select
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
'将合法的数据输入到文本框
Select Case KeyAscii
Case 48 To 58
'调用数字键点击处理程序
cmdNumber_Click KeyAscii - 48
KeyAscii = 0
Case 46
'调用小数点输入
cmdPoint_Click
KeyAscii = 0
Case 13
'当敲击回车时,不能触发Form的 KeyUp 事件,因此在这里设置文本框的焦点
txtDisplay.SetFocus
Case Else
KeyAscii = 0
End Select
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
txtDisplay.SetFocus
End Sub
Private Sub Form_Load()
strNumber = ""
strPoint = "."
intOperator = 7
End Sub
先放图
代码如下
Private Sub Command1_Click()
Text3.Text = Val(Text1.Text) + Val(Text2.Text)
End Sub
Private Sub Command2_Click()
Text3.Text = Val(Text1.Text) - Val(Text2.Text)
End Sub
Private Sub Command3_Click()
Text3.Text = Val(Text1.Text) * Val(Text2.Text)
End Sub
Private Sub Command4_Click()
Text3.Text = Val(Text1.Text) / Val(Text2.Text)
End Sub
Private Sub Command5_Click()
Text1 = ""
Text2 = ""
Text3 = ""
End Sub
Private Sub Command6_Click()
End
End Sub
完全版的前后台代码...
'请把下面的保存为 form1.frm
VERSION 5.00
Begin VB.Form Calculator
BorderStyle = 1 'Fixed Single
Caption = "计算器"
ClientHeight = 2970
ClientLeft = 2580
ClientTop = 1485
ClientWidth = 3270
ClipControls = 0 'False
BeginProperty Font
Name = "System"
Size = 9.75
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Icon = "CALC.frx":0000
LinkMode = 1 'Source
LinkTopic = "Form1"
MaxButton = 0 'False
PaletteMode = 1 'UseZOrder
ScaleHeight = 2970
ScaleWidth = 3270
WhatsThisHelp = -1 'True
Begin VB.CommandButton Number
Caption = "7"
Height = 480
Index = 7
Left = 120
TabIndex = 7
Top = 600
Width = 480
End
Begin VB.CommandButton Number
Caption = "8"
Height = 480
Index = 8
Left = 720
TabIndex = 8
Top = 600
Width = 480
End
Begin VB.CommandButton Number
Caption = "9"
Height = 480
Index = 9
Left = 1320
TabIndex = 9
Top = 600
Width = 480
End
Begin VB.CommandButton Cancel
Caption = "C"
Height = 480
Left = 2040
TabIndex = 10
Top = 600
Width = 480
End
Begin VB.CommandButton CancelEntry
Caption = "CE"
Height = 480
Left = 2640
TabIndex = 11
Top = 600
Width = 480
End
Begin VB.CommandButton Number
Caption = "4"
Height = 480
Index = 4
Left = 120
TabIndex = 4
Top = 1200
Width = 480
End
Begin VB.CommandButton Number
Caption = "5"
Height = 480
Index = 5
Left = 720
TabIndex = 5
Top = 1200
Width = 480
End
Begin VB.CommandButton Number
Caption = "6"
Height = 480
Index = 6
Left = 1320
TabIndex = 6
Top = 1200
Width = 480
End
Begin VB.CommandButton Operator
Caption = "+"
Height = 480
Index = 1
Left = 2040
TabIndex = 12
Top = 1200
Width = 480
End
Begin VB.CommandButton Operator
Caption = "-"
Height = 480
Index = 3
Left = 2640
TabIndex = 13
Top = 1200
Width = 480
End
Begin VB.CommandButton Number
Caption = "1"
Height = 480
Index = 1
Left = 120
TabIndex = 1
Top = 1800
Width = 480
End
Begin VB.CommandButton Number
Caption = "2"
Height = 480
Index = 2
Left = 720
TabIndex = 2
Top = 1800
Width = 480
End
Begin VB.CommandButton Number
Caption = "3"
Height = 480
Index = 3
Left = 1320
TabIndex = 3
Top = 1800
Width = 480
End
Begin VB.CommandButton Operator
Caption = "X"
Height = 480
Index = 2
Left = 2040
TabIndex = 14
Top = 1800
Width = 480
End
Begin VB.CommandButton Operator
Caption = "/"
Height = 480
Index = 0
Left = 2640
TabIndex = 15
Top = 1800
Width = 480
End
Begin VB.CommandButton Number
Caption = "0"
Height = 480
Index = 0
Left = 120
TabIndex = 0
Top = 2400
Width = 1080
End
Begin VB.CommandButton Decimal
Caption = "."
Height = 480
Left = 1320
TabIndex = 18
Top = 2400
Width = 480
End
Begin VB.CommandButton Operator
Caption = "="
Height = 480
Index = 4
Left = 2040
TabIndex = 16
Top = 2400
Width = 480
End
Begin VB.CommandButton Percent
Caption = "%"
Height = 480
Left = 2640
TabIndex = 17
Top = 2400
Width = 480
End
Begin VB.Label Readout
Alignment = 1 'Right Justify
BackColor = &H0000FFFF&
BorderStyle = 1 'Fixed Single
Caption = "0."
BeginProperty Font
Name = "MS Sans Serif"
Size = 12
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H00000000&
Height = 375
Left = 120
TabIndex = 19
Top = 105
Width = 3000
End
End
Attribute VB_Name = "Calculator"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
' --------------------------------------------------------------------------
' 版权所有 (C) 1994 Microsoft Corporation
'
' 您可以免费以任何方式使用、修改、复制并分发您认为有用的
' 示例应用程序文件 (或任何修改过的版本)。Microsoft 对任何
' 示例应用程序文件不做任何保证,不负任何责任和义务。
' --------------------------------------------------------------------------
Option Explicit
Dim Op1, Op2 ' 前面输入的操作数
Dim DecimalFlag As Integer ' 小数点仍然存在吗?
Dim NumOps As Integer ' 操作数个数
Dim LastInput ' 指示上一次按键事件的类型
Dim OpFlag ' 指示未完成的操作
Dim TempReadout
' C (取消) 按钮的 Click 事件过程
' 重新设置显示并初始化变量
Private Sub Cancel_Click()
Readout = Format(0, "0.")
Op1 = 0
Op2 = 0
Form_Load
End Sub
' CE (取消输入) 按钮的 Click 事件过程
Private Sub CancelEntry_Click()
Readout = Format(0, "0.")
DecimalFlag = False
LastInput = "CE"
End Sub
' 小数点 (.) 按钮的 Click 事件过程
' 如果上一次按键为运算符,初始化 readout 为 "0.";
' 否则显示时追加一个小数点
Private Sub Decimal_Click()
If LastInput = "NEG" Then
Readout = Format(0, "-0.")
ElseIf LastInput > "NUMS" Then
Readout = Format(0, "0.")
End If
DecimalFlag = True
LastInput = "NUMS"
End Sub
' 窗体的初始化过程
' 设置所有变量为其初始值
Private Sub Form_Load()
DecimalFlag = False
NumOps = 0
LastInput = "NONE"
OpFlag = " "
Readout = Format(0, "0.")
'Decimal.Caption = Format(0, ".")
End Sub
' 数字键 (0-9) 的 Click 事件过程
' 向显示中的数追加新数
Private Sub Number_Click(Index As Integer)
If LastInput > "NUMS" Then
Readout = Format(0, ".")
DecimalFlag = False
End If
If DecimalFlag Then
Readout = Readout + Number(Index).Caption
Else
Readout = Left(Readout, InStr(Readout, Format(0, ".")) - 1) + Number(Index).Caption + Format(0, ".")
End If
If LastInput = "NEG" Then Readout = "-" & Readout
LastInput = "NUMS"
End Sub
' 运算符 (+, -, x, /, =) 的 Click 事件过程
' 如果接下来的按键是数字键,增加 NumOps。
' 如果有一个操作数,则设置 Op1。
' 如果有两个操作数,则将 Op1 设置为 Op1 与
' 当前输入字符串的运算结果,并显示结果
Private Sub Operator_Click(Index As Integer)
TempReadout = Readout
If LastInput = "NUMS" Then
NumOps = NumOps + 1
End If
Select Case NumOps
Case 0
If Operator(Index).Caption = "-" And LastInput > "NEG" Then
Readout = "-" & Readout
LastInput = "NEG"
End If
Case 1
Op1 = Readout
If Operator(Index).Caption = "-" And LastInput > "NUMS" And OpFlag > "=" Then
Readout = "-"
LastInput = "NEG"
End If
Case 2
Op2 = TempReadout
Select Case OpFlag
Case "+"
Op1 = CDbl(Op1) + CDbl(Op2)
Case "-"
Op1 = CDbl(Op1) - CDbl(Op2)
Case "X"
Op1 = CDbl(Op1) * CDbl(Op2)
Case "/"
If Op2 = 0 Then
MsgBox "除数不能为 0", 48, "计算器"
Else
Op1 = CDbl(Op1) / CDbl(Op2)
End If
Case "="
Op1 = CDbl(Op2)
Case "%"
Op1 = CDbl(Op1) * CDbl(Op2)
End Select
Readout = Op1
NumOps = 1
End Select
If LastInput > "NEG" Then
LastInput = "OPS"
OpFlag = Operator(Index).Caption
End If
End Sub
' 百分比键 (%) 的 Click 事件过程
' 计算并显示第一个操作数的百分数
Private Sub Percent_Click()
Readout = Readout / 100
LastInput = "Ops"
OpFlag = "%"
NumOps = NumOps + 1
DecimalFlag = True
End Sub
1、创建控件组的方法首先创建一个命令按钮,调整其大小(觉得合适就行),名称为Command1,Caption 属性为数字 0 ;然后进行“复制”和“粘贴”,当选择“粘贴”时,出现对话框提示已有一个同名控件,询问是否创建控件组,选择“是”后,即创建了一个名为“Command”的控件组。
这时,第一个按钮的Index属性值默认为“0”,第二个的Index属性值自动设为“1”,并且大小与第一个按钮相同,只需修改其 Caption 属性为数字“1”并将其拖至合适位置即可。此后继续使用“粘贴”的方法建立其他控件组中其余按钮,共20个按钮,每建立一个,就将它拖到合适处,并修改相应的Caption属性值。
2、各控件组其属性设置如下:
设置效果如下图所示:
二、编写代码
Dim s1 As Single, s2 As Single, ysf As String
‘定义两个单精度数变量用与存放参与运算的数,一个字符型存放运算符
Private Sub Command1_Click(Index As Integer)
Text1.Text = Text1.Text & Command1(Index).Caption ’将command1的单击事件与文本框显示的内容连接
End Sub
Private Sub Command2_Click()
Text1.Text = Text1.Text + “。”
If (InStr(Text1.Text, “。”) = 1) Then ‘第一位不能为小数
Text1.Text = “”
End If
If InStr(Text1.Text, “。”) 《 Len(Text1.Text) Then ’防止出现两个小数点
Text1.Text = Left
(Text1.Text, Len(Text1.Text) - 1)
End If
End Sub
Private Sub
Command3_Click()
s2 = Val(Text1.Text) ‘开始加减乘除运算
Select Case ysf Case “+”
Text1.Text = s1 + s2
Case “-”
Text1.Text = s1 - s2
Case “*”
Text1.Text = s1 * s2
Case “/”
If s2 = 0 Then
MsgBox “分母不能为零!”
Text1.Text = “”
Else
Text1.Text = s1 / s2 End If End Select
Text1 = IIf(Left(Text1.Text, 1) = “。”, 0 & Text1.Text, Text1.Text) ‘
这个很关键,如果没有这个的话,得出小于1的小数前面没有0
End Sub
Private Sub Command4_Click()
If Text1.Text = “” Then ’文本为空就结束
Exit Sub
End If
Text1.Text = Left(Text1.Text, Len(Text1.Text) - 1) ‘文本退一格
End Sub
Private Sub Command5_Click()
Text1.Text = “” ’清除当前框内文本
End Sub
Private Sub Command6_Click(Index As Integer)
s1 = Val(Text1.Text) ‘将s1隐藏起来 ysf = Command6(Index).Caption
Text1.Text = “”
End Sub
Private Sub Command7_Click()
If Left(Text1.Text, 1) 《》 “-” Then ’判断作为负数
Text1.Text = “-” & Text1.Text
Else
Text1.Text = Right(Text1.Text, Len(Text1.Text) - 1)
End If
End Sub
Private Sub Command8_Click()
Text1.Text = Text1.Text * Text1.Text ‘平方
End Sub
拓展资料Visual Basic(VB)是由微软公司开发的包含环境的事件驱动编程语言。它源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。程序员可以轻松地使用VB提供的组件快速创建一个应用程序。
参考链Visual Basic——百度百科接
vb程序设计,急求!!给出代码,感激!
我是用vb.net2005写的语法和VB差不多我没有用控件数组,如果用VB控件数组的话就更好写了
你参考一下.
Public Class Form1
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
End
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim a(12) As Integer
Dim i As Integer
Dim j As Integer = 0
Dim randomObject As New Random()
For i = 1 To 12
a(i) = randomObject.Next()
Next
For i = 1 To 12
If j < a(i) Then
j = a(i)
End If
Next
For i = 1 To 12
If a(i) = j Then
a(i) = -1
End If
Next
j = 0
For i = 1 To 12
If j < a(i) Then
j = a(i)
End If
Next
For i = 1 To 12
If a(i) = j Then
a(i) = -1
End If
Next
Dim b(12) As String
For i = 1 To 12
If a(i) = -1 Then
b(i) = "Empty"
Else
b(i) = a(i).ToString
End If
Next
Dim z(9) As String
z(0) = "A"
z(1) = "B"
z(2) = "C"
z(3) = "D"
z(4) = "E"
z(5) = "F"
z(6) = "G"
z(7) = "H"
z(8) = "I"
z(9) = "J"
j = 0
For i = 1 To 12
If b(i) <> "Empty" Then
b(i) = z(j)
j = j + 1
End If
Next
Label1.Text = b(1)
Label2.Text = b(2)
Label3.Text = b(3)
Label4.Text = b(4)
Label5.Text = b(5)
Label6.Text = b(6)
Label7.Text = b(7)
Label8.Text = b(8)
Label9.Text = b(9)
Label10.Text = b(10)
Label11.Text = b(11)
Label12.Text = b(12)
End Sub
End Class
'10个text1,1个命令按钮
Private Sub Command1_Click()
Dim I As Integer
Dim J As Long '总共生成随机数的次数
Dim K As Integer '生成座位
Dim s(12) As Integer '座位中对应的人
For I = 1 To 10 '按人选座位
Do
J = J + 1
Randomize
K = Int(Rnd * 12 + 1)
Loop While (s(K) <> 0) '当作为中已经有人,重新选座位
s(K) = I '记录座位中的人
Next I
For I = 1 To 12
Text1(I - 1) = IIf(s(I) = 0, "Empty", Chr(64 + s(I)))
Next I
Debug.Print J
End Sub
用VB设计一个收款计算程序,代码咋编写啊?
Private Sub Command1_Click()
TRESULT = T1.Text * T2.Text * (1 - T3.Text)
End Sub
Private Sub Command2_Click()
'T1.Text = ""
'T2.Text = ""
TRESULT = ""
T3.SetFocus
T3.SelStart = 0
T3.SelLength = Len(T3.Text) ‘将焦点定位在“折扣”一栏,选中“折扣“中的内容.
End Sub
Private Sub Command3_Click()
End
End Sub
rivate
sub
command1_click()
select
case
text2.text
case
"+"
text4.text
=
str(val(text1.text)
+
val(text3.text))
case
"-"
text4.text
=
str(val(text1.text)
-
val(text3.text))
case
"*"
text4.text
=
str(val(text1.text)
*
val(text3.text))
case
"/"
if
val(text3.text)
=
0
then
text4.text
=
"除数不能为0"
else
text4.text
=
str(val(text1.text)
/
val(text3.text))
end
if
end
select
end
subprivate
sub
command2_click()
unload
me
end
sub
“单价”——Text1
“数量”——Text2
“折扣”——Text3
“计算”——Command1
“清除”——Command2
代码如下。
==================================
Private Sub Command1_Click()
On Error GoTo e
MsgBox "应付款" & Text1.Text * Text2.Text * (1 - Text3.Text)
Exit Sub
e:
MsgBox "数据输入错误"
End Sub
Private Sub Command2_Click()
Call Form_Load
End Sub
Private Sub text3_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyReturn
Call Command1_Click
Case vbKeyEscape
Call Form_Load
End Select
End Sub
Private Sub Form_Load()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Command1.Caption = "计算"
Command2.Caption = "清除"
End Sub
vb程序设计实例100
试题一.1
Private Sub Form_Click()
Print fs_sum(100)
End Sub
Function fs_sum(ByVal n As Integer) As Single
Dim s!, nc! '和与倒数
s=0
For i = 1 To n
nc = 1 / i
s = s + nc
Next i
fs_sum = s
End Function
试题一.2
Private Sub Form_Click()
For i = 1 To 4
Print Space(4 - i);
For j = 1 To i
Print "* ";
Next j
Print
Next i
End Sub
待续,未完...
Vb 程序设计
在VB的MSDN的实例库里有一个alarm实例
就是闹钟
新建一工程,窗体名AlarmForm.
放置一个Timer,名字为Timer1。放置一个Label,名字为lblTime
代码如下:
Option Explicit
Dim AlarmTime
Const conMinimized = 1
Private Sub Form_Click()
AlarmTime = InputBox("输入启动闹钟的时间", "VB 闹钟", AlarmTime)
If AlarmTime = "" Then Exit Sub
If Not IsDate(AlarmTime) Then
MsgBox "您输入的时间无效。"
Else ' 从 InputBox 返回的字符串使有效时间,
AlarmTime = CDate(AlarmTime) ' 将它作为一个日期/时间值存储在 AlarmTime 中。
End If
End Sub
Private Sub Form_Load()
AlarmTime = ""
End Sub
Private Sub Form_Resize()
If WindowState = conMinimized Then ' 如果窗体被最小化, 在标题处显示时间。
SetCaptionTime
Else
Caption = "闹钟"
End If
End Sub
Private Sub SetCaptionTime()
Caption = Format(Time, "Medium Time") ' 使用中等时间格式显示时间。
End Sub
Private Sub Timer1_Timer()
Static AlarmSounded As Integer
If lblTime.Caption <> CStr(Time) Then
' 当前秒数与显示秒数不同。
If Time >= AlarmTime And Not AlarmSounded Then
Beep
MsgBox "启动闹钟在 " & Time
AlarmSounded = True
ElseIf Time < AlarmTime Then
AlarmSounded = False
End If
If WindowState = conMinimized Then
' 如果处于最小化状态, 每分钟都需更新窗体标题。
If Minute(CDate(Caption)) <> Minute(Time) Then SetCaptionTime
Else
' 否则每秒钟对标签的标题进行更新。
lblTime.Caption = Time
End If
End If
End Sub
一个看似简单的问题却让我想了半天
写出来了:
Private Sub Form_Load()
Dim inputSecs, Secs, Days, Hours, Mins As Long
End Sub
Private Sub Text1_Change()
On Error GoTo DebugErr
inputSecs = Val(Text1.Text)
Secs = inputSecs Mod 60
Mins = (inputSecs - (inputSecs Mod 60)) / 60
Hours = (Mins - (Mins Mod 60)) / 60
Mins = Mins - Hours * 60
Days = (Hours - (Hours Mod 24)) / 24
Hours = Hours - Days * 24
Label2.Caption = Days & "日" & Hours & "小时" & Mins & "分钟" & Secs & "秒"
DebugErr:
If Err.Number = 6 Then
MsgBox "输入的数字太大!"
Text1.Text = ""
End If
End Sub