vb初学经典程序示例
vb代码(小白常用)
Adodc1.RecordSource = strSQL
Adodc1.Refresh
Set DataGrid1.DataSource = Adodc1
全部条件查询:
Private Sub Command6_Click()
Dim iidd As String
Declare Function SetWindowPos& Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long)
dirname = App.Path + "\Documentation\设备档案\" + Frame2.Caption + aaa
deleterec = MsgBox(dirname, vbYesNo, "新建目录")
If deleterec = vbYes Then
MkDir dirname'新建目录
Command11.Caption = "显示系统记事"
End Sub
If MsgBox("请确认是否退出系统?", vbYesNo) = vbYes Then End‘退出系统
程序目录:App.Path
由数据库字义菜单:
n1 = Adodc5.Recordset.RecordCount - 1 '定义名称菜单
VB编程实例精讲(150例)
6
如前所述,您可以选择 VBE 菜单“插入——用户窗体/模块/类模块”来插入模块或 用户窗体以及相应的代码窗口。此外,您也可以在“工程资源管理器”中单击鼠标 右键,从弹出的菜单中选择“插入——用户窗体/模块/类模块”来实现上面的操作。 在获取相应的代码模块窗口后,就可以输入 VBA 代码了。 在 VBE 编辑器的代码模块中输入 VBA 代码,通常有以下几种方法: ■ 手工键盘输入; ■ 使用宏录制器,即选择菜单“工具——宏——录制新宏”命令,将所进行的操作 自动录制成宏代码; ■ 复制/粘贴代码,即将现有的代码复制后,粘贴到相应的代码模块中; ■ 导入代码模块,即在 VBE 编辑器中选择菜单“文件——导入文件”或在“工程资 源管理器”的任一对象上右击鼠标选择菜单“导入文件”,选择相应的代码文件导入。 如果不想要某个模块了,可以选择菜单“文件——移除模块”,也可以在相应的模 块上单击鼠标右键,从弹出的菜单中选择“移除模块”。此时,会弹出一个警告框, 询问在移除模块前是否将其导出,可以根据需要进行选择。 也可以选择菜单“文件——导出文件”或在相应的模块上单击鼠标右键后,从弹出 的菜单中选择“导出文件”,将移除的模块保存在相应的文件夹中。这样,以后可 以对其进行导入,从而加以利用。 调试 VBA 代码 在 VBE 编辑器的菜单中,有两项与调试运行有关的菜单项,即“调试”菜单和“运 行”菜单,它们提供了各种调试和运行的手段。在我现阶段进行代码调试时,常 用到的有以下几个: ■ 逐语句。可以按 F8 键对代码按顺序一条一条语句运行,从而找出语句或逻辑 错误。 ■ 设置断点。在可能存在问题的语句处设置断点(可通过在相应代码前的空白部 位单击,将会出现一个深红色的椭圆即断点),当程序运行至断点处时,会中止 运行。 ■ 在语句的适当部位设置 Debug.Print 语句,运行后其结果会显示在“立即窗口” 中,可以此测试或跟踪变量的值。 ■ 在“立即窗口”中测试。对值的测试或跟踪,也可以以“?”开头,在“立即窗口” 中输入需要测试值的语句,按 Enter 回车键后将立即出现结果;对执行语句的测 试,可直接在“立即窗口”中输入,按 Enter 回车键后将执行。 ■ 可以按 F5 键直接运行光标所在位置的子程序。 在执行程序后,必须在 Excel 工作表中查看所得到的结果。可以用鼠标单击 VB E 编辑器左上角的 Excel 图标或者是按 Alt+F11 组合键切换到 Excel 界面。 (当然,对程序代码的调试有很多方法和技巧,留待以后对 VBA 进一步研究和理 解更透彻后一并讨论。) 利用 VBA 帮助系统 如果遇到疑问或错误,可以利用 Excel 自带的 VBA 帮助系统。 ■ 可以在如图 00-09 所示的部位输入需要帮助的关键词,按 Enter 回车键后将会 出现相关主题。用鼠标单击相应的主题即会出现详细的帮助信息。
vb编程精彩实例推荐(初级)
一个实用的VB屏幕程序本文来自: 站长() 详细出处参考:/web/165/18547.htm在VB5.0具有面向对象的程序设计思想及可视化的编程方式,可开发出各种多媒体应用程序,颇得软件设计者青睐。
笔者最近应用VB5.0编制了一程序,成功实现了“图文并茂”的屏幕效果,即:屏幕出现用户选定的一幅赏心悦目的图像,在图像下方有一行字幕缓缓地从屏幕右边向左边移动,全部文字移至左边消失后,从右边又平滑拖出字幕,字幕移动过程中既不影响图像的整体效果又能对图像进行提示、说明,使应用程序界面充满“活性”。
现将设计的整个过程介绍如下:(1)创建一个新目标文件(Project1),并建立一个窗体Form1。
(2)在Form1上配置一个计时器控件Timer1、标签控件Label1、图像控件Picture1。
(3)各控件属性设置:Timer1的Enabled设置为“True”。
用Label1的Font设置屏幕下方循环移动的提示信息字体及大小,ForeColor设置字体颜色,AutoSize设置为True,BackStyle设置为“0-transparent”。
Picture1的AutoSize设置为False,Height设为5435,Width设为8235,Scalemode设置为“3-pixel”。
(4)程序代码清单:PrivateSubForm_Load()′设置图像控件Picture1属性,在屏幕显示图像Picture1 Picture=LoadPicture(″C:\Pwin95\Setup.bmp″)Picture1 ForeColor=RGB(255,10,110)Picture1 FontItalic=TruePicture1 FontBold=TruePicture1 Top=155Picture1 Left=635′将标签控件Label1的Caption属性设置为屏幕下方循环移动的提示信息Label1 Caption=″江西省黎川县职业中专电脑室设计″Label1 Left=WidthLabel1 Top=5653Timer1 Interval=375Form1 Windowstate=2EndSubPrivateSubTimer1_Timer()IfLabel1 Left<0-Label1 WidthThenLabel1 Left=WidthEndIfLabel1 Left=Label1 Left-255EndSub程序中的图像及移动字幕可依自己喜好灵活设计,以达到最佳效果。
vb经典代码
1。
求三角形的面积代码:Option ExplicitDim a!,b!,c!r,!,s!Private Sub Command1_Click()a = InputBox(”a=”, "请输入a的数值")b = InputBox(”b=", "请输入b的数值")c = InputBox("c=”, ”请输入c的数值")If a + b 〉c And a + c 〉b And b + c > a And a 〉0 And b 〉0 And c 〉0 Thenr = 1 / 2 * (a + b + c)s = Sqr(r *(r — a) * (r — b) *(r — c))Label1。
Caption = "三角形的面积为" & sElseLabel2.Caption = ”输入的数据不能构成三角形"End IfEnd Sub2.三个数排列代码:Option ExplicitDim x!,y!,z!, t!Private Sub Command1_Click()x = InputBox("输入第一个数x")y = InputBox("输入第二个数y”)z = InputBox("输入第三个数z")Print "排序前";x &”" & y &””&zIf x < y Then t = x:x = y: y = tIf y < z Thent = y: y = z: z = tIf x 〈y Thent = x:x = y: y = tEnd IfEnd IfPrint "排序后”;z & ”" &y & ”" &xEnd Sub3。
计算一元二次方程的代码:Option ExplicitDim a!,b!,c!,d!,x1!,x2!Private Sub Command1_Click()a = InputBox(”a=”, ”请输入一元二次方程的系数a")b = InputBox("b=”,”请输入一元二次方程的系数b")c = InputBox(”c=”,"请输入一元二次方程的系数c”) If a = 0 ThenPrint ”因为a≠0,你输入的a=0,请重新输入系数a" End Ifd = b ^ 2 - 4 * a * cIf d >= 0 Thenx1 = (—b + Sqr(d))/ (2 * a)x2 = (—b - Sqr(d)) / (2 * a)Print ”系数为”&a; b; c &"的一元二次方程的根分别为”& "x1=”& x1 & ”" &"x2=" &x2ElsePrint ”此方程在实数范围内无解"End IfEnd Sub4。
VB程序设计例题12例
索引一、在窗体上画一个文本框,其名称为Text1,Text属性为空白。
再画一个命令按钮,其名称为C1,Visible属性为False。
编写适当的事件过程。
程序运行后,如果在文本框中输入字符,则命令按钮出现。
二、计算圆的周长和面积:在窗体中添加一个文本框(Text1)和一个对应的标签(Label1),再添加两个命令按钮(Command1和Command2)和一个图片框(Picture1)。
程序运行时,当单击Command1按钮后,计算圆的周长;当单击Command2按钮后,计算圆的面积;计算结果输出在图片框中。
(要求在未输入半径前两个按钮呈灰色不可用。
)三、在窗体上添加三个文本框和对应的三个标签,标签的标题分别是“个位”、“十位”、“百位”。
程序运行时,当单击窗体后,随机产生一个【100,999】区间内的整数,将它的个位、十位、百位数字分别显示在对应的文本框中。
四、设计一个计算程序:在窗体上添加四个文本框和四个对应的标签,标签的标题分别是“语文”、“数学”、“外语”、“平均成绩”,三个命令按钮,标题分别为“清除”、“计算”、“退出”。
程序运行后,用户按“清除”按钮,则清除文本框中显示的内容,按“计算”按钮,则计算三科平均成绩,将计算结果显示在第四个文本框中(计算结果保留小数点后一位)。
单击退出按钮则程序退出。
五、某税务部门征收所得税,规定如下:(1)收入200元以内,免征。
(2)收入在200~400元,超过200元的部分纳税3%。
(3)收入超过400元的部分,纳税4%。
(4)当收入达5000元或超过时,将4%税金改为5%。
编程序实现上述操作。
六、给定三角形的三条边的边长,计算三角形的面积。
编写程序,首选判断给出的三条边能否构成三角形,如可以构成,则计算并输出该三角形的面积,否则要求重新输入。
当输入-1时结束程序。
七、编程求100以内的全部素数。
八、编程打印钻石图案。
九、输出杨辉三角形。
十、有一个数组,包含了10个不同的随机整数(20~90),要求计算出它们的平均值,并输出这个数组中最接近于平均值的数。
VB程序代码(简单小程序)
VB程序代码(简单小程序) Option Explicit
Private Sub btnCalculate_Click()
'按钮点击事件,计算两个数的和
'声明变量
Dim num1 As Double
Dim num2 As Double
Dim result As Double
'获取用户输入的数字
num1 = Val(txtNum1.Text)
num2 = Val(txtNum2.Text)
'计算和
result = num1 + num2
'将计算结果展示给用户
lblResult.Caption = "计算结果:" & result
End Sub
Private Sub Form_Load()
'窗体加载事件,初始化窗体
'设置窗体标题
Me.Caption = "简单计算器"
'设置标签的默认文本
lblNum1.Caption = "请输入第一个数:"
lblNum2.Caption = "请输入第二个数:"
lblResult.Caption = ""
如上所示,这是一个简单的VB程序,包含一个窗体和三个按钮,分别用于计算两个
数的和、清空所有输入框和标签的内容以及退出程序。
用户可以在两个文本框中输入数字,点击计算按钮后,程序会将两个数字相加并将结果展示给用户。
如果用户想重新计算,可
以点击清空按钮清除所有输入框和标签的内容,重新输入参数。
vb简单程序例子
vb简单程序例子VB(Visual Basic)是一种简单且易于学习的编程语言,下面是一个简单的VB 程序示例,以便更好地理解和学习编程的基本概念。
这是一个计算圆的面积的VB程序示例:```vbModule Module1Sub Main()Dim radius As DoubleConst pi As Double = 3.14Dim area As DoubleConsole.Write("请输入圆的半径:")radius = Convert.ToDouble(Console.ReadLine())area = pi * radius * radiusConsole.WriteLine("圆的面积为:" & area)Console.ReadLine()End SubEnd Module```在这个程序中,我们首先声明了变量`radius`(圆的半径),`pi`(圆周率)和`area`(圆的面积)。
`radius`和`pi`的数据类型为Double,这意味着它们可以存储小数值。
接下来,我们通过使用`Console.Write`语句提示用户输入圆的半径。
然后,我们使用`Convert.ToDouble`函数将用户输入的值从字符串转换为Double类型,并将其赋值给`radius`变量。
通过使用圆的面积公式`area = pi * radius * radius`,我们计算出圆的面积,并将其存储在`area`变量中。
最后,使用`Console.WriteLine`语句将结果输出到控制台上,并使用`Console.ReadLine`语句等待用户按下任意键来结束程序的执行。
通过运行这个简单的VB程序示例,你可以通过输入圆的半径来计算出圆的面积。
这个示例程序展示了VB编程中变量的声明和使用、用户输入的处理、数学计算以及输出结果的基本方法。
希望这个简单的VB程序示例能够帮助你更好地理解和学习VB编程的基础知识!。
VB程序设计 实例 (2)
Dim YiDongFangXiang As String ' 记录圆的移动方向
Private Sub Command1_Click() Timer1.Enabled = False
End Sub
' 停止圆的移动
Private Sub Timer1_Timer() If Shape1.Top + Shape1.Height >= Form1.ScaleHeight Then ' 圆
YiDongFangXiang = "下" End If If YiDongFangXiang = "上" Then ' 根据以上所得移动方向设置圆在 窗体上是向上还是向下移动
Shape1.Top = Shape1.Top - 100 Else
Shape1.Top = Shape1.Top + 100 End If End Sub
程序代码:
Dim CX As Integer
' 全局变量,用于确定欢迎词在窗体上打印的 X 坐标
Private Sub Command1_Click() Timer1.Enabled = False
End Sub
' 停止欢迎词的移动
Private Sub Timer1_Timer()
Cls
' 清除上一次打印的信息
Else
CX = CX + 2
' 欢迎词在窗体上打印的位置向右边移动 2 缇
End If
End Sub
例】在窗体上放一个列表框,六个命令按钮,列表框列出了某计算机资料室的所 有书名,如下图所示,按以下要求编写各按钮的事件代码。
VB编程题经典案例
1输入3个数,输出最大的数X=val(text1)y=val(text2)z=val(text3)if x>=y thenif x>=z then print xelse print zend ifelse if y>=z then print yend if2有一元二次方程:aX2+bX+c=0,依次输入a, b, c,判断此方程是否有实根a=val(text1)b=val(text2)c=val(text3)If b*b-4*a*c>=0 then print “有实根”else print “无实根”end if3输入一个成绩,若大于等于60,则用消息框显示“恭喜!成绩通过!”,若小于60,则弹出消息框显示“抱歉!成绩没有通过!”N=val (textl)if n>=60 then msgbox”恭喜!成绩通过!”else msgbox “抱歉!成绩没有通过!”end if4输入一年份,判断它是否为闰年,并显示有关信息(判断闰年的条件是:年份能被4整除但不能被100整除,或者能被400整除)y=val(text 1)if y mod 4 =0 and y mod 100 = 0 then print “y 是闰年”else print y "不是闰年’”end if5输入学生的百分制成绩,转换输出为五级制成绩,90〜100分转换为优秀,80〜89转换为良好,70〜79转换为中等,、60〜69转换为及格,0〜60转换为不及格。
If mark >=90 then grade= ‘优’else If mark >=80 then grade =‘ 良’else If mark >=70 then grade =‘ 中’else If mark >=60 then grade ='及格’else grade="不及格”6随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示。
VB经典例题13道附答案
.1.一串字符求有多少字母,有多少量字,有多少其余PrivateSubButton1_Click(ByValsenderAsSystem.Object,By ValeAsSystem.EventArgs)HandlesDims,c,q,w,rs=Fori=1ToLen(s)c=Mid(s,i,1)IfUCase(c)>="A"AndUCase(c)<="Z"Thenq=q+1ElseIfc>="0"Andc<="9"Thenw=w+1Elser=r+1EndIfNext="字母有"&q&"个数字有"&w&"个其余有"&r&"个"EndSub2.一串字符以?结尾,求有多少字母,有多少量字,有多少其余PrivateSubButton1_Click(ByValsenderAsSystem.Object,By ValeAsSystem.EventArgs)HandlesDims,a,z,x,c,is=a=Mid(s,1,1)i=1DoWhilea<>"?"IfUCase(a)>="A"AndUCase(a)<="Z"Thenz=z+1ElseIfa>="0"Anda<="9"Thenx=x+1Elsec=c+1EndIfi=i+1a=Mid(s,i,1)Loop=z&x&cEndSub3.给定一个数字求它是几位数字,如(1).12345(2).-12345PrivateSubButton1_Click(ByValsenderAsSystem.Object,By ValeAsSystem.EventArgs)HandlesDims,c,js=c=Trim(Str(s))IfInt(c)=cThen...Ifc>=0Then="是"&Len(c)&"位数"Else="是"&Len(c)-1&"位数"EndIfElseIfc>=0ThenFori=1ToLen(c)IfMid(c,i,1)="."ThenExitForj=j+1Next="小数点前有"&j&"位数"&" 小数点后有"&Len(c)-j-1&"位数"ElseFori=1ToLen(c)IfMid(c,i,1)="."ThenExitForj=j+1Next="小数点前有"&j-1&"位数"&" 小数点后有"&Len(c)-j-1&"位数"EndIfEndIfEndSub4.求周率公式PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.Even tArgs)HandlesDima,s,n,pia=1n=1WhileMath.Abs(1/n)>pi=pi+a*(1/n)n=n+2a=-aEndWhile=4*piEndSub5.求自然数 e 公式e=1+1+1/2!+1/3!+⋯+1/n!+⋯.PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.Even tArgs)HandlesDimn,e1,ln=1e1=1While1/n>...l=1Fori=1Tonl=l*iNextn=n+1e1=e1+1/lEndWhile=e1EndSub6.右直角三角形PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.E ventArgs)HandlesDimn,s=""n=Val(TextBox1.Text)Fori=1Tons=""&=Space(n-i)Forj=1Tois&="*"Next&=s&vbCrLfNextEndSub7.等腰三角形PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.E ventArgs)HandlesDimn,s=""n=Val(TextBox1.Text)Fori=1Tons=""&=Space(n-i)Forj=1To2*i-1s&="*"Next&=s&vbCrLfNextEndSub8.倒等腰三角形PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.E ventArgs)HandlesDimn,s=""...n=Val(TextBox1.Text)Fori=nTo1Step-1s=""&=Space(n-i)Forj=2*i-1To1Step-1s&="*"Next&=s&vbCrLfNextEndSub9.右上角的直角三角形PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.E ventArgs)HandlesDimn,s=""n=Val(TextBox1.Text)Fori=nTo1Step-1s=""&=Space(n-i)Forj=iTo1Step-1s&="*"Next&=s&vbCrLfNextEndSub10.菱形PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.E ventArgs)HandlesDimn,s=""Fori=1To6s=""&=Space(i-1)Forj=1To12s&="*"Next&=s&vbCrLfNextEndSub11.水仙花数字三位数字的个位数字的立方和等于该数字自己(1).判断输入的数字是不是水仙花数PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.E ventArgs)HandlesDims,a,b,c...s=Val(TextBox1.Text)=""a=s\100b=(s-a*100)\10c=sMod10Ifa^3+b^3+c^3=sThen&=s&"是水仙花数"Else&=s&"不是水仙花数"EndIfEndSub(2).找出全部的水仙花数PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.E ventArgs)HandlesDims,a,b,c="水仙花数是"&vbCrLfFors=100To999a=s\100b=(s-a*100)\10c=sMod10Ifa^3+b^3+c^3=sThen&=s&vbCrLfEndIfNextEndSub12.完整数正整数的因数之和等于这个数(1).判断输入的数字是不是完整数PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.E ventArgs)HandlesDims,j,l,a(100)s=Val(TextBox1.Text)j=1Fori=1Tos-1IfsModi=0Thena(j)=ij=j+1EndIfNextFori=1Tojl=l+a(i)NextIfl=sThen=s&"是完整数"Else...=s&"不是完整数"EndIfEndSub(2).找出1到n内的完整数,n由用入PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.Even tArgs)HandlesDimn,jn=Val(TextBox1.Text)=""Forp=2Tonj=0Fori=1Top-1IfpModi=0Thenj=j+iEndIfNextIfj=pThen&=p&" "EndIfNextEndSub13.示1,1,2,3,5,8,13,21⋯⋯ F(i)=f(i-1)+f(i-2)PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.Even tArgs)HandlesDimf(30)f(1)=1f(2)=1Fori=3To30f(i)=f(i-1)+f(i-2)Next=""Fori=1To30&=f(i)&","IfiMod6=0Then&=vbCrLfNextEndSub ..。
一文学会VB编程,简单实用不费力
一文学会VB编程,简单实用不费力应用实例:给VB程序加菜单图标:在VB里面加图标比较麻烦,你需要用到API函数进行调用,参数不好理解:给菜单添加图标的API函数:GetMenu、GetSubMenu、GetMenuItemID、SetMenuItemBitmaps。
写代码前你要把ImageList控件放到窗体上,如果工具栏中找不到它,通过“工程”菜单下的“部件”进行添加:将ImageList控件添加到窗体后,右键属性弹出窗口,插入图片添加你需要用的小图像:编写代码:代码解释:前面你要声明几个API函数GetMenu:获得弹出菜单的句柄,判断窗体上到底有没有菜单控件,否则返回Null值,hwnd参数用来指定有菜单的窗口。
GetSubMenu:获得弹出菜单的句柄,hmenu参数用来指定父菜单,npos菜单用来指定弹出菜单在主菜单中的位置。
SetMenuItemBitmaps:把位图搞过来,wflags参数决定npos 参数指定的是ID还是顺序编号,hBitmapUnchecked和hBitmapChecked指定菜单项的位图。
如果知道这几个函数的功能和参数的作用就不难理解窗体程序中加载的代码了:menu1 = GetMenu(Me.hwnd):判断有没有菜单menuid = GetMenuItemID(GetSubMenu(menu1, 0), i - 1):获取菜单的ID数值SetMenuItemBitmaps menu1, menuid, bitmap, ImageList1.ListImages(i).Picture, ImageList1.ListImages(i).Picture:将图像通过FOR循环依次赋值给这个菜单运行:应用实例控件用法:在Visual Basic环境下,TextBox控件主要的作用是接收用户输入、编辑和修改的内容,显示程序输出的信息,体现了程序与用户的交互性。
实现:登录系统需要输入用户名和密码,使用TextBox控件限制用户输入用户名和密码的字符数量,限制密码框中输入的字符数量不超过6位,当用户输入的数量超限时,则弹出消息框加以提示。
vb6.0开发实例
vb6.0开发实例Visual Basic 6.0(VB6.0)是一款经典的集成开发环境(IDE),用于Windows平台的软件开发。
本文将通过一个简单的实例来演示如何使用VB6.0创建一个学生成绩管理系统,旨在帮助初学者了解VB6.0的基本开发过程。
一、新建项目:打开VB6.0,选择“标准EXE”模板,创建一个新项目。
接下来,设计一个简单的窗体,包括学生姓名、学号、数学成绩和英语成绩等基本信息的输入框。
二、设计数据库:在VB6.0中,我们可以使用Access数据库作为后台数据库。
创建一个名为"StudentDB.mdb"的Access数据库,其中包含一个名为"StudentTable"的表,用于存储学生信息(姓名、学号、数学成绩、英语成绩)。
三、连接数据库:在VB6.0的窗体上添加ADO控件,用于与数据库进行交互。
通过ADO控件建立与"StudentDB.mdb"数据库的连接,并在代码中编写SQL语句,实现数据的插入、更新、删除和查询等操作。
' 连接数据库Private Sub Form_Load()Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Dat a Source="& App.Path & "\StudentDB.mdb;Persist Security Info=Fal se"Adodc1.RefreshEnd Sub四、添加按钮和事件处理:在窗体上添加按钮,如“添加记录”、“更新记录”、“删除记录”、“查询记录”等。
通过按钮的Click事件处理程序,调用相应的SQL语句实现对数据库的操作。
' 添加记录Private Sub cmdAdd_Click()Adodc1.Recordset.AddNewAdodc1.Recordset("Name") = txtName.TextAdodc1.Recordset("StudentID") = txtStudentID.TextAdodc1.Recordset("MathScore") = txtMathScore.TextAdodc1.Recordset("EnglishScore") = txtEnglishScore.TextAdodc1.Recordset.UpdateEnd Sub' 查询记录Private Sub cmdSearch_Click()Adodc1.RecordSource = "SELECT * FROM StudentTable WHERE StudentID = '"& txtSearchStudentID.Text & "'"Adodc1.RefreshEnd Sub' 更新记录Private Sub cmdUpdate_Click()Adodc1.Recordset("MathScore") = txtMathScore.TextAdodc1.Recordset("EnglishScore") = txtEnglishScore.TextAdodc1.Recordset.UpdateEnd Sub' 删除记录Private Sub cmdDelete_Click()Adodc1.Recordset.DeleteAdodc1.Recordset.UpdateEnd Sub五、界面美化:通过VB6.0提供的控件属性设置,对窗体和控件进行美化,使其更符合用户界面设计的要求。
40个Visual Basic 编程简单实例
目录实验题目1:设计窗体。
参考界面如下: (2)实验题目2: 设计一个计算器。
参考界面如下: (3)实验题目3:设计一个能够统计某学生三门课程成绩总分和平均分的程序。
参考界面如下: (4)实验题目4:设计界面,编写程序计算圆的周长和面积。
参考界面如下: (4)实验题目5:设计界面,编写程序验证算术运算符的功能。
参考界面如下: (5)实验题目6:设计界面,编写程序分离出一个三位数的个位、十位、百位上的数字。
参考界面如下: (6)实验题目7:输入一个三位数,将它按逆序输出。
参考界面如下: (7)实验题目8:输入两个数,将这两个数交换。
(8)实验题目9:设计文本编辑窗体。
(8)实验题目10:编写程序计算某个学生三门课程的平均成绩。
(10)实验题目12:编写程序计算长方体的体积。
(10)实验题目13:编写程序求出四个数中的最小数。
(11)实验题目14:编写程序判断某个数是否是水仙花数。
(11)实验题目15:编写程序,实现数字和英文单词的对应。
(12)实验题目16:设计程序,判断从键盘上输入的某个字符为哪类字符。
(大写字母、小写字母、数字字符或其他字符) (12)实验题目17:设计一个简单的文本编辑器,可以实现文本的简单格式化操作。
(13)实验题目18:编写程序输出图形,运行界面如下: (15)实验题目19:编写程序求n!。
(15)实验题目20:编写程序,求出某班所有同学某门课程的平均成绩。
(16)实验题目21:编写程序输出1-100之间所有能被3整除的整数,要求每行输出5个。
并输出这些整数的和。
(用for语句实现) (16)实验题目21:编写程序,统计输入的一个字符串中各类字符的个数。
(用for语句实现).17 实验题目22:编写程序,定义包含10个数组元素的一维数组,给该数组中的数组元素赋值为3,6,9,12......数字,并以顺序和逆序两种方式输出各元素值。
. (17)实验题目23:随机生成20个100以内的正整数,将其中的奇数和偶数分两行显示在窗体上,并分别统计奇数和偶数的个数。
VB初学者实例50例
SubClass_WndMessage = CallWindowProc(OldWindowProc, hWnd, Msg, wp, lp)
Exit Function
End If
SubClass_WndMessage = True
As String) As Long
Public Type SECURITY_ATTRIBUTES
nLength As Long
lpSecurityDescriptor As Long
bInheritHandle As Long
End Type
Else
Text1.Text = "This is a readonly text box." '文本窗口是可读写窗口,设置为只读窗口
l = SendMessage(Text1.hwnd, EM_SETREADONLY, True, vbNull)
Text1.BackColor = vbInactiveBorder '将背景设置为灰色
Private Sub Command2_Click()
SetOnTop 0
End Sub
7.只容许运行一个程序实例(利用互斥体)
选择启动对象为sub main()
module:
Public Declare Function CreateMutex Lib "kernel32" Alias "CreateMutexA" _ (lpMutexAttributes As SECURITY_ATTRIBUTES, ByVal bInitialOwner As Long, ByVal lpName _
VB常用程序
1.求最大公约数和最小公倍数Dor = u Mod vu = v: v = rLoop Until r = 0Print "最大公约数:"; uPrint "最小公倍数:"; m * n / u2.判断素数A.Private Sub Command1_Click() Dim n As Integer, i As Integern = Val(InputBox("输入一个整数")) For i = 2 To n - 1If n Mod i = 0 Then Exit ForNext iIf i > n - 1 ThenPrint n; "是素数"ElsePrint n; "不是素数"End IfEnd SubB.Private Sub Command1_Click()n = Val(Text1.Text)For i = 2 To nFor j = 2 To Sqr(i)If i Mod j = 0 Then Exit ForNext jIf j > Sqr(i) Then Print iNext iEnd Sub3.排序A.比较交换排序For i = 1 To n - 1For j = i + 1 To nIf a(i) > a(j) Thent = a(i)a(i) = a(j)a(j) = tEnd IfNext jNext iB.选择法排序For i = 1 To n - 1p = iFor j = i + 1 To nIf a(p) > a(j) Then p = jNext ja(i) = a(p)a(p) = tNext iC.冒泡法排序1.For i = 1 To n - 1For j = 1 To n - iIf a(j) > a(j + 1) Thent = a(j)a(j) = a(j + 1)a(j + 1) = tEnd IfNext jNext i2 For i = 1 To n - 1For j = i To 1 Step -1If a(j) > a(j + 1) Thent = a(j)a(j) = a(j + 1)a(j + 1) = tEnd IfNext jNext i3,For i = 1 To n - 1For j = n To i + 1 Step -1If a(j) < a(j - 1) Thent = a(j)a(j) = a(j - 1)a(j - 1) = tEnd IfNext jNext i4.查询A.顺序查询p = 1While k <> a(p) And p < np = p + 1WendIf k = a(p) ThenPrint k; "has be found,on"; "th position." ElsePrint k; "has not be found."End IfB.折半查询k = Val(InputBox("输入要查找的关键值")) Print "要查询的数是;"; klow = 1hig = nWhile low <= high And find = -1m = (low + hig) \ 2If k = a(m) Thenfind = 1Print k; "has be found,on"; m; "th position.'" ElseIf k < a(m) Thenhig = m - 1Elselow = m + 1End If5.求最大值和最小值Option Base 1Private Sub Form_Click()Dim a As VariantMax = -99999Min = -99999a = Array(56, 2, 3, 2, 3, 2, 4, 5, 6, 7)For i = 1 To 10If a(i) > Max Then Max = a(i)If a(i) < Min Then Min = a(i)Next iPrintPrint "10个数为"For i = 1 To UBound(a)Print a(i); "";Next iPrintPrint "最大值:"; MaxPrint "最小值:"; MinEnd Sub6.有序数列的插入Option Base 1Private Sub Command1_Click()Dim a(30) As Integer, ps As Stringn = 9For i = 1 To na(i) = Val(InputBox("输入数据:"))ps = ps & a(i) & ""Next ilabel2.Caption = psx = Val(InputBox("输要查找的数:"))p = 1Do While x > a(p) And p <= np = p + 1LoopFor i = n To p Step -1a(i + 1) = a(i)a(p) = xn = n + 1ps = ""For i = 1 To nps = ps & a(i) & ""Next iLabel4.Caption = psEnd Sub7.有序数列的删除Option Base 1Private Sub Command1_Click()Dim a(30) As Integer, ps As Stringn = 10For i = 1 To na(i) = Val(InputBox("输入数据:"))ps = ps & a(i) & ""Next ilabel2.Caption = psx = Val(InputBox("输要查找的数:"))p = 1If x < a(1) Or x > a(n) ThenMsgBox Str(x) & "数据越界!", vbExclamation Do While x《> a(p) And p <= np = p + 1LoopIf x = (p) ThenFor i = p + 1 To na(i - 1) = a(i)Next in = n - 1ps = ""For i = 1 To nps = ps & a(i) & ""Next ilabel4.Caption = psElseMsgBox Str(x) & "没有找到!", vbExclamation End IfEnd IfEnd Sub。
VB经典例题(附答案)
实验4:编写一个程序。
要求在窗体内设置7个标签(Label)及7个文本框(TextBox),将每个标签的Text属性值设置为如下表达式。
在程序运行时,单击窗体空白区,可在对应的文本框中输出这些表达式的值。
1)8*3*6\22)7/6*3.2/2.15*(5.5+3.5)3)34\4+4.0^5/124)65\3 mod 3.4*fix(3.8)5)“abg”+”34” & “erert”6)true or not (8+3>=23)7)7>2 or 4<9实验目的:学习VB运算符的使用。
Public Class Form1Private Sub Form1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.ClickTextBox1.Text = 8 * 3 * 6 \ 2TextBox2.Text = 7 / 6 * 3.2 / 2.15 * (5.5 + 3.5)TextBox3.Text = 34 \ 4 + 4.0 ^ 5 / 12TextBox4.Text = 65 \ 3 Mod 3.4 * Fix(3.8)TextBox5.Text = """abg""" + """34""" & """erert"""TextBox6.Text = True Or Not (8 + 3)>= 23TextBox7.Text = 7 > 2 Or 4 < 9End SubEnd Class实验5:编写一个程序。
设a=2,b=3,c=4,d=5,S="ABCDEFGHI]K",求下列表达式的值:(1) 5+(a+b)2(2) cos(b)(sin(a)+1) (3) 8e3ln2(4) Left(S,4) (5) Mid(S, 3,4) (6) Instr(S, "EFG")(7) Lcase(Right(S, 5)) (8) Len(Mid((S, 3)实验目的:学习VB中函数的使用。
vb新手事例
Vb编程示例1、猜数字游戏控件名称属性form1 caption(“猜数游戏“),maxbutton(false)label1 caption (”请输入一个数字(0-100):‘)label2 caption (“”)autosize (true)forecolor(红色)text text(“”)command1 caption(“开始游戏”)command2 caption (“让我猜"),default(true )command3 caption (”退出游戏“) ,cancel (true )private sub command1 _click ()dim n as integerrandomizen = int (rnd * 101)form1.tag = ncommand1.enabled = falsetext1.setfocus ' 文本框获得焦点end subprivate sub command2 _click ()dim m as integerm =val(text1.text )if m >form1.tag thenlabel2.caption = " 你猜的数字太大了!"' 下面两条语句实现选中文本框内容text1.selstart = 0text1.sellength = len(text1.text)elseif m <form1.tag thenlabel2.caption = " 你猜的数字太小了!"' 下面两条语句实现选中文本框内容text1.selstart = 0text1.sellength = len(text1.text)elselabel2.caption = "恭喜你!猜对了!" command1.enabled = trueend ifend subprivate sub command3 _click ()unload meend subprivate sub form_ unload (cancel as integer)dim n as integer'当用户退出系统时,提示用户是否退出n = msgbox ("确实要退出游戏吗?" , vbyesno = vbformtion ,"游戏提示")if n= vbno thencancel = trueend ifend sub运行时的图片为;2、制作一个登录窗口制作一个登陆窗口,在窗口上绘制2个标签控件,两个文本控件2个命令按钮对象属性label1 caption (" 请输入账号"),autosize (ture )label2 caption (" 请输入密码"),autosize (ture )tetusername text (清空),maxlenth (10) ,tooltiptext ("账号不超过10位")tetpasssword text (清空),passwordchar (*)command1 caption(确定&OK) , default (true )command2 caption(取消&cancer),cancer(true)form1 caption(登录窗口),maxbutton(false)运行时如图3、制作一个要求输入年龄和性别的窗口要求用户输入年龄和性别private sub command1_click ()dim age as integer,sex as stringage = val(text1.text )sex = text2.textif age < 18 thenlabel3.caption = "本游戏不允许未成年人进入" endelseif sex = "男" thenlabel3.caption = "欢迎这位男士!"elselabel3.caption ="欢迎这位女士!"end ifend ifend sub运行时如图3、自动监控游戏窗口的实现方法演示程序代码本程序用vb编写。
VB编程实例.doc
用VB编写一个密码解锁界面我也是刚开始学VB语言,VB语言很强大,有别于其它语言,操作性很强,是很富有创造性的电脑语言。
下面是我看了两天书后编写的一个小程序:功能是能建立两个窗口,一个密码窗口,一个为修改密码窗口。
当密码输入正确后才能打开或者做一些事情,点击修改密码跳往第二个界面,修改成功后以修改的密码为解锁密码。
中间有错误提示和误操作提示。
①先建立一个小窗口,如下图:帐号一的“textbox”编号为“text1”,后面一次类推,command指令为1。
②程序的编写Text1:初始帐号为“07823”,如果可以的话可以给加入更多的功能,比如记忆多个账户和多对密码之类的等等。
2、text23、command1初始密码为“1234”,open函数可以打开文件,自己可以设置文件路径。
4、command2跳往第二个界面,隐藏第一界面。
5、初始指令6、全局变量全局变量本界面可以修改、其它界面可以调用的变量。
②建立第二个窗口Text的序号从上到下依次顺序排列,command的命令一次从左到右排列③第二个窗口的程序编写1、Text1:Private Sub Text1_LostFocus()Dim b As IntegerDim pw_1 As String, pw_2 As Stringpw_2 = Form1.mpw_1 = Text1.TextIf pw_1 <> pw_2 Thenb = MsgBox("密码错误", 5 + vbExclamation, "错误提示")End IfEnd Sub2、text2:Private Sub Text2_LostFocus()If Text2.Text = "" ThenMsgBox "新密码不能为空"End IfEnd Sub3、text3:Private Sub Text3_LostFocus()If Text2.Text <> Text3.Text ThenMsgBox "两次输入密码不一样"Text2.Text = ""Text3.Text = ""Text2.SetFocusEnd IfEnd Sub4、command1:Private Sub Command1_Click() If Text2.Text = Text3.Text Then n = Text2.TextEnd IfText1.Text = ""Text2.Text = ""Text3.Text = ""Form1.ShowForm2.HideEnd Sub5、command2:Private Sub Command2_Click() Text1.Text = ""Text2.Text = ""Text3.Text = ""Form1.ShowForm2.HideEnd Sub初始设置(Form)Private Sub Form_Load()Text1.PasswordChar = "*" Text1.Text = ""Text2.PasswordChar = "*" Text2.Text = ""Text3.PasswordChar = "*" Text3.Text = ""End Sub全局变量申明Public n As String。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VB典型程序!1、设计采用欧几里德算法求解两个自然数的最大公约数的程序。
Private Sub command1_click()Dim m As Long, n As LongDim r As Longm = Val(Text1.Text)n = Val(Text2.Text)If m < 1 Or n < 1 ThenText3.Text = "数据错误"ElseDor = m Mod nm = nn = rLoop Until r = 0Text3.Text = CStr(m)End IfEnd Sub2、从由字母、数字组成的字符串中找出所有大写字母并逆序输出的程序Private Sub Command1_Click()Dim s As String, d As String, t As StringDim i As IntegerText1.SetFocuss = Text1.TextFor i = 1 To Len(s)If Mid(s, i, 1) >= "A" And Mid(s, i, 1) <= "Z" Thent = t & Mid(s, i, 1)End IfNext iFor i = Len(t) To 1 Step -1d = d & Mid(t, i, 1)Next iText2.Text = dEnd Sub3、编写程序,找出所有三位水仙花数。
所谓水仙花,是指各位数字的立方和等于该数本身的数。
例如,153=1^3+5^3+3^3,,所以153是一个水仙花数。
Option ExplicitPrivate Sub command1_click()Dim I As Integer, a As Integer, b As Integer, c As IntegerDim st As StringFor a = 1 To 9For b = 0 To 9For c = 0 To 9I = a * 100 + b * 10 + cIf I = a ^ 3 + b ^ 3 + c ^ 3 Thenst = I & "=" & a & "^3+" & b & "^3+" & c & "^3"List1.AddItem stEnd IfNext cNext bNext aEnd Sub4、将一个二进制数原码转换成补码。
Option ExplicitPrivate Sub command1_click()Dim source As String, I As IntegerDim D As String * 1source = Text1.TextIf Mid(source, 1, 1) <> "1" ThenText2.Text = sourceText3.Text = sourceElseFor I = Len(source) To 2 Step -1If Mid(source, I, 1) = "1" ThenMid(source, I, 1) = "0"ElseMid(source, I, 1) = "1"End IfNext IText2.Text = sourceText3.Text = sourceD = "1"For I = Len(source) To 2 Step -1If Mid(source, I, 1) = "1" And D = "1" ThenMid(source, I, 1) = "0"D = "1"ElseIf Mid(source, I, 1) = "0" And D = "1" ThenMid(source, I, 1) = "1"D = "0"End IfNext IText3.Text = sourceEnd IfEnd Sub5、编写程序,随机生成100个两位整数,并统计出其中小于等于40、大于40小于等于70及大于70的数据个数。
Private Sub command1_click()Dim I As IntegerDim s As IntegerDim s1 As IntegerDim s2 As IntegerDim s3 As IntegerFor I = 1 To 100s = Int(Rnd * 90 + 10)Select Case sCase Is <= 40s1 = s1 + 1Case Is <= 70s2 = s2 + 1Case Elses3 = s3 + 1End SelectNext IText1.Text = CStr(s1)Text2.Text = CStr(s2)Text3.Text = CStr(s3)End Sub6、编写程序,输入正整数n, 求其对应的二进制数。
Private Sub command1_click()Dim s As StringDim t As Integert = Val(Text1.Text)Do While t <> 0s = CStr(t Mod 2) + st = t \ 2LoopText2.Text = sEnd Sub7、编写程序,求出100之内的所有勾股数。
所谓勾股数,是指满足条件a^2+b^2=c^2(a <>b)的自然数。
Private Sub Command1_Click()Dim a As IntegerDim b As IntegerDim c As IntegerFor a = 1 To 100For b = a + 1 To 100For c = b + 1 To 100If a ^ 2 + b ^ 2 = c ^ 2 ThenList1.AddItem CStr(c) & "^2=" & CStr(a) & "^2+" & CStr(b) & "^2"End IfNext cNext bNext aEnd Sub8、设计一个用二分法求方程x^3-x^4+4x^2-1=0在区间【0.,1】上的一个实根。
算法提示:若方程f(x)=0在区间【a,b】上有一个实根,则f(a)与f(b)必然异号,即f(a)*f(b)<0;设c= (a+b)/2,若f(a)*f(c)>0,则令a=c,否则令b=c。
当b-c的绝对值小于或等于给定误差要求时,则c就是要求的根。
Private Function f(x As Single) As Doublef = x ^ 3 - x ^ 4 + 4 * x ^ 2 - 1End FunctionPrivate Sub Command1_Click()Dim a As Single 'Dim b As SingleDim c As Singlea = 0:b = 1If f(a) * f(b) < 0 ThenDoc = (a + b) / 2If f(a) * f(c) > 0 Thena = cElseb = cEnd IfLoop Until Abs(b - c) < 0.000001 And f(b) * f(c) < 0End IfPrint cEnd Sub9、找出100以内的所有素数,存放在数组Prime 中,并将所找到的素数按每行10个的形式显示在窗体上。
Option Base 1Option ExplicitPrivate Sub form_click()Dim prime(50) As Integer, I As IntegerDim k As Integer, m As Integer, j As Integerprime(1) = 2m = 1For I = 3 To 99 Step 2For k = 2 To Sqr(I)If I Mod k = 0 Then Exit ForNext kIf k > Sqr(I) Thenm = m + 1prime(m) = IEnd IfNext Ik = 0For j = 1 To mk = k + 1Print prime(j);If k Mod 10 = 0 Then PrintNext jEnd Sub10、随即生成10个两两互质的数,并按从小到大的顺序存放在listbox中.。
Option ExplicitPrivate Sub command1_click()Dim p As Integer, I As Integer, idx As IntegerDim j As IntegerList1.List(0) = Int(Rnd * (9999 - 1000)) + 1000Dop = Int(Rnd * (9999 - 1000)) + 1000For I = 0 To List1.ListCount - 1For j = 2 To pIf p Mod j = 0 And List1.List(I) Mod j = 0 ThenExit ForEnd IfNext jIf j <= p Then Exit ForNext IIf I > List1.ListCount - 1 Thenidx = 0Do While p < List1.List(idx)idx = idx + 1If idx > List1.ListCount - 1 Then Exit DoLoopList1.AddItem p, idxEnd IfLoop Until List1.ListCount = 10End Sub11、随机生成10个1-99的整数,用选择法对10个数进行排序。
Option ExplicitOption Base 1Private Sub cmdsort_click()Dim sort(10) As Integer, temp As IntegerDim I As Integer, j As IntegerRandomizeFor I = 1 To 10sort(I) = Int(Rnd * (100 - 1)) + 1Text1 = Text1 & Str(sort(I))Next IFor I = 1 To 9For j = I + 1 To 10If sort(I) > sort(j) Thentemp = sort(I)sort(I) = sort(j)sort(j) = tempEnd IfNext jText2 = Text2 & Str(sort(I))Next IText2 = Text2 & Str(sort(I))End Sub12、编写程序实现顺序查找的功能。