VB编程实例
vb教程编程实例详解
vb教程编程实例详解VB教程编程实例详解VB(Visual Basic)是一种面向对象的编程语言,它可以用于开发Windows应用程序。
在这里,我们将详细解释一些VB 编程实例,以帮助初学者更好地理解和掌握这门语言。
编程实例1:计算器首先,让我们创建一个计算器的VB程序。
我们将使用VB的窗体和按钮来实现这个功能。
首先,我们需要在窗体上添加一些按钮,如"1"、"2"、"+"、"="等。
然后,我们需要用一个文本框来显示计算结果。
在窗体上双击"+"按钮并添加以下代码:```Private Sub ButtonPlus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonPlus.ClickDim num1 As IntegerDim num2 As IntegerDim result As Integernum1 = Integer.Parse(TextBoxNum1.Text)num2 = Integer.Parse(TextBoxNum2.Text)result = num1 + num2TextBoxResult.Text = result.ToString()End Sub```在这个代码中,我们首先定义了三个变量:num1、num2和result,用于存储计算结果。
然后,我们使用Integer.Parse方法将文本框中输入的文本转换为整数类型,并将其赋值给num1和num2。
接下来,我们将num1和num2相加,将结果赋值给result,并使用result.ToString()方法将结果转换为字符串类型并显示在结果文本框中。
编程实例2:学生成绩管理系统接下来,让我们创建一个学生成绩管理系统的VB程序。
VB编程实例
一、导入到Xls文件并打印Sub OnLButtonUp(ByVal Item, ByVal Flags, ByVal x, ByVal y)Dim a,fsoa=HMIRuntime.Tags("fileName").ReadSet fso = CreateObject("scripting.filesystemobject")If fso.FileExists("C:\Model.xls") ThenDim objExcelAppSet objExcelApp = CreateObject("Excel.Application")objExcelApp.Visible = FalseobjExcelApp.Workbooks.Open "C:\Model.xls"objExcelApp.Cells(2, 3).Value = HMIRuntime.Tags("NewTag1_1").read objExcelApp.Cells(4, 5).Value = HMIRuntime.Tags("NewTag1_2").read objExcelApp.Cells(6, 7).Value = HMIRuntime.Tags("NewTag1_3").read objExcelApp.Cells(8, 9).Value = HMIRuntime.Tags("NewTag1_4").readobjExcelApp.Cells(10, 11).Value = HMIRuntime.Tags("NewTag1_5").read objExcelApp.ActiveWorkbook.SaveAs("C:\Report\"&CStr(a)&".xls")objExcelApp.ActiveWorkbook.PrintOutobjExcelApp.Workbooks.CloseobjExcelApp.QuitSet objExcelApp = NothingMsgBox "文件已经成功导出/Export Successful"ElseMsgBox "Excel模板文件不存在"End ifEnd Sub二、从Xls文件导入或者查询Sub OnLButtonUp(Byval Item, Byval Flags, Byval x, Byval y) Dim a,fsoa=HMIRuntime.Tags("FileName").ReadSet fso = CreateObject("scripting.filesystemobject")If fso.FileExists("C:\Report\"&CStr(a)&".xls") ThenDim objExcelAppSet objExcelApp = CreateObject("Excel.Application") objExcelApp.Visible = FalseobjExcelApp.Workbooks.Open "C:\Report\"&CStr(a)&".xls"HMIRuntime.Tags("NewTag1_1").Write objExcelApp.Cells(2, 3).Value HMIRuntime.Tags("NewTag1_2").Write objExcelApp.Cells(4, 5).Value HMIRuntime.Tags("NewTag1_3").Write objExcelApp.Cells(6, 7).Value HMIRuntime.Tags("NewTag1_4").Write objExcelApp.Cells(8, 9).ValueHMIRuntime.Tags("NewTag1_5").Write objExcelApp.Cells(10, 11).Value objExcelApp.ActiveWorkbook.SaveobjExcelApp.Workbooks.CloseobjExcelApp.QuitSet objExcelApp = NothingMsgBox "导入数据成功/Import Successful"ElseMsgBox "文件不存在/file is not existing"End ifEnd Sub3、WinCC如何实现带确认的按钮操作网上多是介绍C脚本实现的方法,其实VB脚本的实现更简单,代码如下:Sub OnLButtonUp(Byval Item, Byval Flags, Byval x, Byval y) If MsgBox("提示内容",1,"提示标题")=1 ThenHMIRuntime.Tags("TestTag").Write 1ElseHMIRuntime.Tags("TestTag").Write 0End IfEnd Sub说明MsgBox("提示内容",1,"提示标题")中的1为消息窗口中按钮的类型0=vbOKonly1=vbOKCancel2=vbAbortRetryIgnore3=vbYesNoCancel4=vbYesNo一、将WinCC变量导出到TEXT文件Sub OnLButtonUp(ByVal Item, ByVal Flags, ByVal x, ByVal y) Dim fso,FileDim aa=HMIRuntime.Tags("FileName").ReadConst ForWriting = 2Set fso = CreateObject("Scripting.FileSystemObject")Set File = fso.OpenTextFile("D:\Export&Import\"&CStr(a)&".txt", ForWriting, True) File.WriteLine(HMIRuntime.Tags("Var_1").read)File.WriteLine(HMIRuntime.Tags("Var_2").read)File.WriteLine(HMIRuntime.Tags("Var_3").read)File.WriteLine(HMIRuntime.Tags("Var_4").read)file.WriteLine(HMIRuntime.Tags("Var_5").read)File.CloseMsgBox "文件已经成功导出/Export Successful"End Sub二、从TXT文件中读取数据到WinCC变量Sub OnLButtonUp(ByVal Item, ByVal Flags, ByVal x, ByVal y)Dim fsoDim txtfileDim aa=HMIRuntime.Tags("FileName").ReadSet fso = CreateObject("scripting.filesystemobject")If fso.FileExists("D:\\Export&Import\\"&CStr(a)&".txt") ThenSet txtfile = fso.OpenTextFile("D:\\Export&Import\\"&CStr(a)&".txt") HMIRuntime.Tags("Var_1").Write txtfile.ReadLineHMIRuntime.Tags("Var_2").Write txtfile.ReadLineHMIRuntime.Tags("Var_3").Write txtfile.ReadLineHMIRuntime.Tags("Var_4").Write txtfile.ReadLineHMIRuntime.Tags("Var_5").Write txtfile.ReadLineMsgBox "导入数据成功/Import Successful"txtfile.CloseElseMsgBox "文件不存在/File is not existing"End ifEnd Sub。
vb开发ocx实例
vb开发ocx实例【最新版】目录1.什么是 OCX?2.VB 开发 OCX 实例的过程3.OCX 控件的使用方法4.总结正文一、什么是 OCX?OCX(Object Control Extension)是一种可重用的软件组件,它是由 Microsoft 开发的一种 COM(Component Object Model)控件技术。
OCX 控件可以在不同的编程语言和平台之间进行互操作,这使得开发人员可以更轻松地创建具有丰富功能的应用程序。
二、VB 开发 OCX 实例的过程1.创建一个新的 ActiveX 控件库项目首先,在 Visual Basic 中创建一个新的 ActiveX 控件库项目。
这可以通过选择“新建”>“ActiveX 控件库”来实现。
2.设计 OCX 控件接下来,设计 OCX 控件。
这包括为控件添加属性、方法和事件。
例如,可以添加一个名为“HelloWorld”的按钮,当单击该按钮时,会触发一个名为“OnButtonClick”的事件,并显示一条消息框。
3.编译和测试 OCX 控件完成控件设计后,编译并测试 OCX 控件。
这可以通过选择“编译”来实现。
如果编译成功,将生成一个名为“YourControl.ocx”的文件。
4.在 VB 应用程序中使用 OCX 控件现在,可以将 OCX 控件添加到 VB 应用程序中。
首先,将生成的“YourControl.ocx”文件复制到应用程序项目的“Controls”文件夹中。
然后,在 Visual Basic 中引用该控件,并在窗体上添加一个实例。
三、OCX 控件的使用方法1.引用 OCX 控件在 VB 代码中引用 OCX 控件,需要使用“Imports”语句。
例如,要引用上面创建的“YourControl.ocx”控件,可以添加以下代码:```Imports YourControl```2.创建 OCX 控件实例在 VB 代码中创建 OCX 控件实例,需要使用“CreateObject”函数。
VB实例源码(最新整理)
课前体验Private Sub Form_Click()For i = 1 To 10For j = 1 To iPrint "* ";Next jPrintNext iEnd Sub【例3-1】Private Sub Form_Click()c1$ = Chr$(13) + Chr$(10)msg1$ = "请输入您的名字: "msg2$ = "输入后按回车键"msg3$ = "或单击“确定”按钮"msg$ = msg1$ + c1$ + msg2$ + c1$ + msg3$name$ = InputBox(msg$, "InputBox 函数示例", "张三")Print name$End Sub【例3-2】Private Sub Form_Click()Msg1$=”Are you Continue to?”msg2$=”Operation Dialog Box”r=MsgBox(msg1$,34,msg2$)Print rEnd Sub【例3-3】编写程序,用MsgBox函数判断是否继续执行。
Private Sub Form_Click()msg$ = "请确认此数据是否正确"Title$ = "数据检查对话框"x = MsgBox(msg$, 19, Title$)If x = 6 ThenPrint x * xElseIf x = 7 ThenPrint "请重新输入"End IfEnd Sub【例3-5】Private Sub Form_Click()Print: PrintFontName = "隶书"FontSize = 16Print " 姓名"; Tab(8); "年龄"; Tab(16); "职务";Print Tab(24); "单位"; Tab(32); "籍贯"PrintPrint "吴大明"; Tab(8); 25; Tab(16); "职员"; Tab(24); "人事科"; Tab(32); "北京"End Sub【例3-6】Private Sub Form_Click()X = InputBox("请输入成绩", "学生成绩录入", "00")Print xEnd Sub【例3-7】Private Sub Form_Click()Dim x As Single, y As Singlex=InputBox(“请输入x的值”)If x>0 Then y=1 ElseIf x=0 Then y=0 Else y=-1Print “x=”; x ,”y=” ; yEnd Sub【例3-8】Private Sub Form_Click()Dim msg, UserInputmsg = "请输入一个字母或0~9之间的数字."UserInput = InputBox(msg) ‘输入一个字母或数字If Not IsNumeric(UserInput) Then ‘判断是否是数字If Len(UserInput) = 1 Then ‘不是数字时,判断输入的字符串长度是否为1 Select Case Asc(UserInput) ‘判断输入字母的ASCII码值Case 60 To 90 '在60-90之间为大写字母msg = "你输入的是一个大写字母'"msg = msg & Chr(Asc(UserInput)) & "'。
vb数据库编程实例
VB编程实例4(单个数据库表应用程序) 1.打开工程vblx,添加一个窗口Form1,修改Form1的属性,名称(Nam e)为:fxs,Caption(窗口标题)为: 学生档案,保存在你的目录下.在fm ain中添加水平菜单(m3):数据库,添加下拉菜单(m31): 学生档案,其单击代码为:fxs.Show 2.准备好access数据库xs.m db,有两个表xs,cj,在数据源中添加系统DSN,选择驱动程序为Microsoft Access Driver,名称为lx,数据库指向你的xs.m db 添加ADO部件(Mi crosoft ADO Data Control 6.0)和DataGrid 部件(Microsoft DataGrid Control 6.0). 3.在窗体上放一个框架Fram e1,去掉Caption,设BorderStyle为0-None,在Fram e1上放一个Fram e2, 去掉Caption,设BorderStyle为0-None,在Fram e2上放置Adodc1,设其ConnectionString属性为DNS=lx, RecordSource的命令类型为2-adCm dTable,表名为xs,在Fram e2上放置命令按钮数组Comm and1(0~3),Caption分别为:添加,保存,删除,关闭在Fram e1上放一个Fram e3,去掉Caption,在Fram e3上放置标签数组zdm(0~7),设置字体,颜色, Caption分别为序号,登录名,姓名,性别,生日,电子邮件,电话,住址,放置文本框数组zdz(0~7), DataSource为Adodc1,DataField分别为xh,dlm,xm,xb,sr,eml,dh,dz 4.在窗体上放一个DataGrid1,设其DataSource为Adodc1,右击DataGrid1选择检索字段, 再右击调出属性页,在通用页设置允许添加,删除,更新,在列页设置各列的标题分别为: 序号,登录名,姓名,性别,生日,电子邮件,电话,住址,在布局页设置各列的宽和对齐方式5.响应Form的Load事件,添加如下代码: Left = (Screen.Width - Width) \ 2 Top = (Screen.Height - Height) \ 2'窗口居中 Fram e1.Left = 0: Fram e1.Top = 0 Fram e1.Width = ScaleWidth Fram e1.Height = ScaleHeight / 4 Fram e2.Left = (ScaleWidth -Fram e2.Width) \ 2 Fram e3.Left = (ScaleWidth - Fram e3.Width) \ 2 DataGrid1.Top = ScaleHeight / 4: DataGrid1.Left = 0 DataGrid1.Width = ScaleWidth DataGrid1.Height = ScaleHeight * 3 / 4 Adodc1.Refresh 响应Form的Resize事件,添加如下代码: If WindowState = 1 Then Exit Sub'最小化时不执行代码If WindowState = 0 Then Left = (Screen.Width - Width) \ 2 Top = (Screen.Height - Height) \ 2'正常窗口居中End If Fram e1.Left = 0: Fram e1.Top = 0 Fram e1.Width = ScaleWidth Fram e1.Height = ScaleHeight / 4 Fram e2.Left = (ScaleWidth - Fram e2.Width) \ 2 Fram e3.Left = (ScaleWidth - Fram e3.Width) \ 2 DataGrid1.Top = ScaleHeight / 4: DataGrid1.Left = 0 DataGrid1.Width = ScaleWidth DataGrid1.Height = ScaleHeight * 3 / 4 响应Form的Unload事件,添加如下代码: Adodc1.Recordset.Close 响应Comm and1的Click事件Select Case Index Case 0 Adodc1.Recordset.AddNew Case 1 Adodc1.Recordset.Update Case 2 Adodc1.Recordset.Delete Case 3 Unload fxs End Select。
vb顺序结构程序实例
vb顺序结构程序实例
以下是一个简单的VB顺序结构程序实例:
程序功能:计算输入两个数的和,并在屏幕上输出结果。
程序代码如下:
'VB顺序结构程序示例
Sub Main()
Dim num1 As Integer '定义第一个数
Dim num2 As Integer '定义第二个数
Dim sum As Integer '定义和
'读取用户输入的两个数
num1 = InputBox("请输入第一个数:")
num2 = InputBox("请输入第二个数:")
'计算两个数的和
sum = num1 + num2
'在屏幕上输出结果
MsgBox "两数之和为:" & sum
End Sub
以上程序是一个简单的VB顺序结构程序,它首先定义了要用到的变量,然后读取用户输入的两个数,并计算它们的和,在屏幕上输出结果。
注意,在编写程序时,要注意代码的格式和缩进,这对于程序的可读性和易维护性非常重要。
vb6.0实例教程
浅谈用VB6.0 编写木马程序现在网络上流行的木马软件基本都是客户机/服务器模式也就是所谓的C/S 结构,目前也有一些开始向B/S 结构转变,在这里暂且不对B/S 结构进行详谈,本文主要介绍C/S 结构其原理就是在本机直接启动运行的程序拥有与使用者相同的权限。
因此如果能够启动服务器端(即被攻击的计算机)的服务器程序,就可以使用相应的客户端工具客户程序直接控制它了。
下面来谈谈如何用VB 来实现它。
首先使用VB 建立两个程序,一个为客户端程序Client,一个为服务器端程序systry。
在Client 工程中建立一个窗体,加载WinSock 控件,称为tcpClient,协议选择TCP,再加入两个文本框,用以输入服务器的IP 地址或服务器名,然后建立一个按钮,按下之后就可以对连接进行初始化了,代码如下:Private Sub cmdConnect_Click()If Len(Text1.Text) = 0 And Len(Text2.Text) = 0 ThenMsgBox ("请输入主机名或主机IP 地址。
")Exit SubElseIf Len(Text1.Text) > 0 ThentcpClient.RemoteHost = Text1.TextElsetcpClient.RemoteHost = Text2.TextEnd IfEnd IftcpClient.ConnectTimer1.Enabled = TrueEnd Sub连接建立之后就可以使用DataArrival 事件处理所收到的数据了。
在服务器端systry 工程也建立一个窗体,加载WinSock 控件,称为tcpServer,协议选择TCP,在Form_Load 事件中加入如下代码:Private Sub Form_Load()tcpServer.LocalPort = 1999tcpServer.ListenEnd Sub准备应答客户端程序的请求连接,使用ConnectionRequest 事件来应答户端程序的请求,代码如下:Private Sub tcpServer_ConnectionRequest(ByVal requestID As Long)If tcpServer.State < > sckClosed ThentcpServer.Close…检查控件的State 属性是否为关闭的。
VB初学者实例50例
第四代计算机语言,VB的特点是显而易见的。
因为是“可视的”所以我们不妨先看看VB的界面(我用的是VB4.0 32位版),很容易可以看到,屏幕上有五个窗口,(1)是菜单栏;(2)是工具箱(Tools Box),里面是VB所需的控件;(3)是VB程序要设计的窗体(Form);(4)控件及窗体的属性(Properties),在VB中每一个控件都有其自己的属性,比如文本框有Text属性,而任何一个控件都有一个自己唯一的名字,这使得我们无需编程就可以完成部分编程的工作;(5)是VB的文件控制窗口,VB的每一个程序称为一个项目(Project),一个项目文件里往往包括以下两种文件,窗体(Form)文件和模块(Bas)文件,当然还有Class文件,这些文件组成一个完整的程序,而项目文件(Vbp)则用来描述程序所包含的内容。
实际上,我一直认为学习的最好方法就是实际操作一下,好,下面我们就来看一个最简单的程序,和所有的编程教科书一样,我们把第一个程序称为“Hello,world!”。
首先,我们先来熟悉一下窗体。
如果你用过Win95附件所带的画图板的话,那么你一定会很快熟悉VB的窗体设计方法,用鼠标单击一下工具箱中的任何一个控件,然后在窗体上任意拖动鼠标,你就会得到一个所需的控件;当然还有其他的方法得到控件,你可以在工具箱上双击得到一个控件;或是按住Ctrl键,再单击所需控件,重复第一次的步骤,你会发现,不用再回去点击工具箱了,点右键可以恢复鼠标指针,这样对于重复画同一个控件尤其有用。
对于我们的第一个小程序,知道这些就已经足够了。
现在你可以在我们的窗体上画如下控件一个图片框(Picture Box),用来显示图画,每一个控件建立的时候,系统都会给它设一个默认的名字(Name),这个PictureBox的名字就叫做Picture1,为了方便起见,我们以后的控件都使用缺省的名称。
选定Picture1,在左边的属性窗口中找到Picture属性,单击会出现,点击为Picture1选一个图像文件,VB支持的图像文件有BitMap、WMF、ICO三种,微软为用户提供了一套图标文件,存放在VB目录的Icons目录下,选择Icons\misc\face01.ico文件,这样图标就被装入了Picture1。
利用VB进行服务器编程实例
现在大多数语言都支持客户-服务器模式编程,其中VB给我们提供了很好的客户-服务器编程方式。
下面我们用VB来实现TCP/IP网络编程。
TCP/ IP协议是In ternet 最重要的协议。
VB提供了Win Sock控件,用于在TCP/ IP 的基础上进行网络通信。
当两个应用程序使用Socket 进行网络通信时,其中一个必须创建Socket 服务器侦听,而另一个必须创建Socket 客户去连接服务器。
这样两个程序就可以进行通信了。
1.创建服务器,首先创建一个服务端口号。
并开始侦听是否有客户请求连接。
建立一窗体,并向其增加一个Winsock 控件(可在工程菜单中的部件项来添加此控件),添加两文本框Text1,Text2,和一按钮Command1Private Sub Form_Load()SockServer.LocalPort = 2000 '服务器端口号,最好大于1000SockServer 丄iste n '开始侦听End SubPrivate Sub Form_Unload(Cancel As Integer) SockServer.CloseEnd SubPrivate Sub SockServer_Close()SockServer.CloseEnd SubPrivate Sub SockServer_ConnectionRequest(ByVal requestID As Long)SockServer.CloseSockServer.Accept requestID '表示客户请求连接的ID号End Sub'当客户向服务器发送数据到达后,产生DataArrival事件,在事件中接收数据,GetData方法接收数据。
Private Sub SockServer_DataArrival(ByVal bytesTotal As Long)Dim s As StringSockServer.GetData sText1.Text = sEnd Sub当我需要向客户发送数据时,只需调用Se ndData方法。
VB编程实例精讲(150例)
ExcelVBA编程实例(150例)主要内容和特点《ExcelVBA编程入门范例》主要是以一些基础而简短的VBA实例来对ExcelV BA中的常用对象及其属性和方法进行讲解,包括应用程序对象、窗口、工作簿、工作表、单元格和单元格区域、图表、数据透视表、形状、控件、菜单和工具栏、帮助助手、格式化操作、文件操作、以及常用方法和函数及技巧等方面的应用。
这些例子都比较基础,很容易理解,因而,很容易调试并得以实现,让您通过具体的实例来熟悉ExcelVBA编程。
■ 分16章共14个专题,以具体实例来对大多数常用的ExcelVBA对象进行讲解;■ 一般而言,每个实例都很简短,用来说明使用VBA实现Excel某一功能的操作;■ 各章内容主要是实例,即VBA代码,配以简短的说明,有些例子可能配以必要的图片,以便于理解;■ 您可以对这些实例进行扩充或组合,以实现您想要的功能或更复杂的操作。
VBE编辑器及VBA代码输入和调试的基本知识在学习这些实例的过程中,最好自已动手将它们输入到VBE编辑器中调试运行,来查看它们的结果。
当然,您可以偷赖,将它们复制/粘贴到代码编辑窗口后,进行调试运行。
下面,对VBE编辑器界面进行介绍,并对VBA代码输入和调试的基本知识进行简单的讲解。
激活VBE编辑器一般可以使用以下三种方式来打开VBE编辑器:■ 使用工作表菜单“工具——宏——Visual Basic编辑器”命令,如图00-01所示;■ 在Visual Basic工具栏上,按“Visual Basic编辑器”按钮,如图00-02所示;■ 按Alt+F11组合键。
图00-01:选择菜单“工具——宏——Visual Basic编辑器”命令来打开VBE编辑器图00-02:选择Visual Basic工具栏上的“Visual Basic编辑器”命令按钮来打开VBE编辑器此外,您也可以使用下面三种方式打开VBE编辑器:■ 在任一工作表标签上单击鼠标右键,在弹出的菜单中选择“查看代码”,则可进入VBE编辑器访问该工作表的代码模块,如图00-03所示;■ 在工作簿窗口左上角的Excel图标上单击鼠标右键,在弹出的菜单中选择“查看代码”,则可进入VBE编辑器访问活动工作簿的ThisWorkbook代码模块,如图00-04所示;■ 选择菜单“工具——宏——宏”命令打开宏对话框,若该工作簿中有宏程序,则单击该对话框中的“编辑”按钮即可进行VBE编辑器代码模块,如图00-05所示。
VS2008--VB编程实例
VS2008——VB编程实例(入门教程)1. VB(Visual Basic)的发展微软公司在1991年推出了建立在Window开发平台基础上的开发工具——Visual Basic 1.0。
随着Window操作平台的不断完善,微软公司也相继推出了Visual Basic2.0 、Visual Basic3.0和Visaul Basic4.0,这些版本主要用于在Window3.x环境中的16位计算机上开发应用程序。
1997年微软公司推出了Visual Basic5.0可以在Window9x或者Window NT环境中32位计算机上开发应用程序。
1998年又推出Visual Basic6.0,它的功能更加完善。
2.VB语言的基础1.关键字:关键字是指系统使用的具有特定含义的字符。
常用的关键字有:Dim、Private , Sub , Public , End , If , Else , Form , Me , Single , As , Integer , Unload , Do , While , MessageBox , For , Next等。
2.标识符:标识符是指编写代码时定义的名称。
在VB中所有的常量、变量、模块、函数、类、对象及其属性都有各自的名称,这些名称就是标识符。
例如:工程1:一个工程的标识符。
Form1:一个窗体的标识符。
Class1:一个类模块的标识符。
Module1:一个模块的标识符。
4.常用数据类型:4.1字符型(String)Public Class Form1Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.LoadDim strA As StringstrA = "Hello world"Label1.Text = strAEnd SubEnd Class上面代码是在VS2008-VB类里建立了Window窗体应用程序,并在窗体上添加一个标签控件(Label1),用关键字Dim 声名一个字符型变量 strA 并赋值“Hello world”,再把它赋给标签(Label1)。
vb串口编程实例
VB串口编程实例介绍VB(Visual Basic)是一种基于对象的编程语言,可用于开发Windows应用程序。
串口编程是指通过串行通信接口与外部设备进行数据交互。
本文将介绍如何使用VB进行串口编程,以实现与外部设备的通信。
前提条件在开始编写VB串口程序之前,需要确保以下条件已满足: - 安装了Visual Studio开发环境,可以选择最新版本的Visual Studio Community免费版。
- 确保计算机上有可用的串口(如COM1、COM2等)或USB转串口适配器。
步骤1. 创建新项目打开Visual Studio,选择创建一个新的VB Windows应用程序项目。
2. 添加控件在窗体上添加以下控件: - 一个ListBox控件用于显示接收到的数据。
- 两个Button控件分别用于打开和关闭串口。
- 一个ComboBox控件用于选择串口号。
- 一个TextBox控件用于输入要发送的数据。
- 一个Button控件用于发送数据。
3. 设置串口属性在窗体代码中添加如下代码:Imports System.IO.PortsPublic Class Form1Dim serialPort As New SerialPort()Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Lo ad' 获取可用的串口号并添加到ComboBox中Dim ports As String() = SerialPort.GetPortNames()ComboBox1.Items.AddRange(ports)End SubPrivate Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click' 打开串口TryserialPort.PortName = ComboBox1.SelectedItem.ToString()serialPort.BaudRate = 9600serialPort.Parity = Parity.NoneserialPort.DataBits = 8serialPort.StopBits = StopBits.OneserialPort.Open()Button1.Enabled = FalseButton2.Enabled = TrueCatch ex As ExceptionMessageBox.Show("无法打开串口:" + ex.Message)End TryEnd SubPrivate Sub Button2_Click(sender As Object, e As EventArgs) Handles Button 2.Click' 关闭串口TryserialPort.Close()Button1.Enabled = TrueButton2.Enabled = FalseCatch ex As ExceptionMessageBox.Show("无法关闭串口:" + ex.Message)End TryEnd SubEnd Class4. 接收数据和发送数据在窗体代码中添加如下代码:Imports System.IO.PortsPublic Class Form1Dim serialPort As New SerialPort()Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Lo ad' 获取可用的串口号并添加到ComboBox中Dim ports As String() = SerialPort.GetPortNames()ComboBox1.Items.AddRange(ports)End SubPrivate Sub Button1_Click(sender As Object, e As EventArgs) Handles Button 1.Click' 打开串口' 省略部分代码...AddHandler serialPort.DataReceived, AddressOf DataReceivedHandlerserialPort.Open()Button1.Enabled = FalseButton2.Enabled = TrueEnd SubPrivate Sub Button2_Click(sender As Object, e As EventArgs) Handles Button 2.Click' 关闭串口' 省略部分代码...RemoveHandler serialPort.DataReceived, AddressOf DataReceivedHandler serialPort.Close()Button1.Enabled = TrueButton2.Enabled = FalseEnd SubPrivate Sub DataReceivedHandler(sender As Object, e As SerialDataReceivedE ventArgs)' 接收数据并显示在ListBox中Dim data As String = serialPort.ReadLine()ListBox1.Invoke(Sub() ListBox1.Items.Add(data))End SubPrivate Sub Button3_Click(sender As Object, e As EventArgs) Handles Button 3.Click' 发送数据If serialPort.IsOpen ThenDim dataToSend As String = TextBox1.TextserialPort.WriteLine(dataToSend)TextBox1.Clear()ElseMessageBox.Show("请先打开串口")End IfEnd SubEnd Class5. 运行程序点击运行按钮,程序将打开一个窗口,其中包含串口选择、打开/关闭串口、接收数据和发送数据的功能。
VB小程序代码实例
VB小程序代码实例VB小程序是一种基于Visual Basic语言开发的应用程序,它可以在Windows 操作系统上运行。
本文将为您提供一个VB小程序代码实例,帮助您了解如何编写和运行一个简单的VB小程序。
代码实例如下:```vbImports SystemPublic Class HelloWorldPublic Shared Sub Main()Console.WriteLine("Hello, World!")Console.ReadLine()End SubEnd Class```上述代码是一个经典的“Hello, World!”程序,它会在控制台输出一条问候语,并等待用户按下回车键。
下面是代码解释:- `Imports System`:这个语句告诉编译器我们将使用System命名空间中的类和方法。
- `Public Class HelloWorld`:这是一个公共类的声明,类名为HelloWorld。
- `Public Shared Sub Main()`:这是程序的入口点,它是一个公共静态方法,程序从这里开始执行。
- `Console.WriteLine("Hello, World!")`:这行代码会在控制台输出一条问候语。
- `Console.ReadLine()`:这行代码会等待用户按下回车键,以便程序暂停执行。
您可以将上述代码复制到一个文本编辑器中,并将文件保存为`.vb`扩展名。
然后,使用VB编译器将其编译为可执行文件,并在Windows操作系统上运行。
这个简单的VB小程序只是一个入门示例,您可以根据自己的需求和兴趣编写更复杂的VB小程序。
VB语言具有丰富的特性和功能,可以用于开发各种类型的应用程序,包括图形用户界面(GUI)应用程序、数据库应用程序、Web应用程序等。
希望这个VB小程序代码实例能够帮助您入门VB编程,并为您今后的学习和开发提供一些参考。
VB案例集锦
案例集锦在前面的章节中讲述了使用VB创建数据库应用程序的几个范例,其实作为编程语言来说,VB易于掌握和提高,可以极为迅速和简洁的创建Windows应用程序,非常适合普通的用户来编写符合自己需要的实用小程序。
在接下来的内容中将向读者介绍几个用VB开发实用小程序的方法,并且结合实例向读者介绍VB编程中的许多技巧。
案例一我的桌面小闹钟一、概述在本例中将创建一个可以自动跟随鼠标移动的小闹钟,实时地显示当前计算机的时间,并且允许用户添加、删除和修改定时任务,这些任务将被保存在一个Access数据库中,在设置的时间到达时,闹钟将用音乐警报,并弹出消息框来提示用户。
其功能模块图如图1.1所示。
图1.1系统的功能模块图二、数据库的准备通过Access或者VB可视化数据管理器创建一个Access数据库,在其中添加一个名为“任务列表”的数据表。
该数据表的结构如表1.1所示。
表1.1 “任务列表”数据表的结构三、应用程序的编写在VB中创建一个新的“标准EXE”工程,将其命名为“我的小闹钟”。
在工程默认的窗体Form1中添加一个图片控件,两个标签控件,一个时间控件,依表11.2至表11.5所示的内容设置窗体和控件的属性。
2案例集锦表1.2窗体Form1的属性表1.3图片控件的属性表1.4标签控件的属性表1.5时间控件的属性在控件箱窗体的空白部分右键单击,在弹出的菜单中选择“部件”,将打开“部件”对话框,如图1.2所示。
图1.2“部件”对话框在“部件”对话框中选择“控件”选项卡,在其列表中找到“Microsoft Multimedia Control 6.0”,在其前方的复选框中打勾,单击“确定”按钮,向工程中添加对Mutimedia MCI控件的引用。
在控件箱的最后将出现Mutimedia MCI控件的图标,选中其图标,在Form1中绘出其实例,如图1.3所示,其属性将在代码中设置。
案例一 我的桌面小闹钟3图1.3 添加Mutimedia MCI 控件的Form1在工程中添加一个普通窗体Form2,如表1.7和表1.8所示为其设置属性并添加菜单。
vb数据库编程实例
vb数据库编程实例VB数据库编程实例:实现学生信息管理系统在计算机编程中,数据库是一项关键技术,用于有效地存储和管理数据。
VB(Visual Basic)是一种广泛使用的编程语言,可以轻松地与数据库进行交互。
本文将详细介绍如何使用VB进行数据库编程,以一个学生信息管理系统的实例为例。
第一步:建立数据库首先,我们需要建立一个数据库来存储学生的信息。
在本实例中,我们将使用Microsoft Access数据库。
打开Microsoft Access并创建一个新的数据库文件。
然后,创建一个新的数据表,其中列的字段如下:- 学生ID(StudentID):主键,唯一标识一个学生- 姓名(Name):学生的全名- 年龄(Age):学生的年龄- 专业(Major):学生所在的专业- 成绩(Grade):学生的总评成绩保存数据库并记录其路径,以便在VB中进行引用。
第二步:创建VB项目打开Visual Studio或任何其他VB开发环境,创建一个新的VB 项目。
命名为“学生信息管理系统”或其他适当的名称。
第三步:连接数据库在VB中连接数据库需要使用。
首先,我们需要导入System.Data和System.Data.OleDb命名空间。
然后,在VB代码中添加以下代码片段来连接到数据库:vbDim connStr As String ="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=<数据库路径>"Dim conn As New OleDbConnection(connStr)将`<数据库路径>`替换为第一步中保存的数据库文件路径。
第四步:加载学生信息接下来,我们将在VB中加载学生信息。
添加一个按钮控件到窗体上,并将其命名为“加载”。
然后,为该按钮的Click事件添加以下代码:vbPrivate Sub LoadButton_Click(sender As Object, e As EventArgs) Handles LoadButton.ClickDim selectQuery As String = "SELECT * FROM Students"Dim adapter As New OleDbDataAdapter(selectQuery, conn)Dim dataSet As New DataSet()adapter.Fill(dataSet, "Students")DataGridView1.DataSource =dataSet.T ables("Students")End Sub在此代码中,我们执行一个简单的查询,从数据库中检索所有学生的信息。
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编程实例讲解
实例53:获得拨号网络项目实例说明在本实例中,我们将制作一个能够取得本地计算机上的拨号网络的项目的应用程序。
程序运行结果如图53-1所示。
图53-1 运行结果技术要点●读取注册表内容●添加到列表框实现过程■新建项目打开Visual ,选择“新建项目”,在项目类型窗口中选择“Visual Basic项目”,在模板窗口中选择“Windows应用程序”,在名称域中输入“GetDialList”,然后选择保存路径。
单击“确认”。
■添加控件和设置属性向窗体上添加一个ListBox控件。
将窗体的Text属性改为“获得拨号网络项目”,其余属性都保持默认。
■添加代码Private Declare Function RegOpenKey Lib "advapi32.dll" Alias"RegOpenKeyA"(ByVal hKey As Integer, ByVal lpSubKey As String, ByRef phkResultAs Integer) As Integer中级篇 167 Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Integer)As IntegerPrivate Declare Function RegEnumKey Lib "advapi32.dll" Alias"RegEnumKeyA"(ByVal hKey As Integer, ByVal dwIndex As Integer, ByVal lpName AsString, ByVal cbName As Integer) As IntegerConst HKEY_CURRENT_USER As Integer = &H80000001Const ERROR_NO_MORE_ITEMS As Short = 259Const ERROR_SUCCESS As Short = 0Private Sub Form1_Load(ByVal eventSender As System.Object, ByVal eventArgs AsSystem.EventArgs) Handles MyBase.LoadDim hKey As IntegerDim i As IntegerDim astr As VB6.FixedLengthString = New VB6.FixedLengthString(256)If RegOpenKey(HKEY_CURRENT_USER, "RemoteAccess\Profile", hKey) =ERROR_SUCCESS ThenWhile RegEnumKey(hKey, i, astr.Value, 256) = ERROR_SUCCESSList1.Items.Add(astr.Value)i = i + 1End WhileRegCloseKey(hKey)End IfEnd Sub■运行程序单击菜单“调试|启动”或单击图标运行程序。
VBA编程实例
VBA编程实例第九章工作表排序本章只有一个范例文件,主要功能对活动工作簿中所有工作表进行排序。
算法说明:1、统计活动工作簿中工作表的数量WsCount=Activeworkbook.worksheets.count2、定义一个一维数组a(1 to wscount)主要用来存放活动工作簿中所有工作表名称字符串 3、利用for each ws in activeworkbook.worksheets 循环将活动工作簿中所有数量赋值给一维数组 4、利用冒泡法对数组进行排序(源文件对排序单独写了一个过程)5、利用worksheets的move方法以及sheets(i)(他代表工作簿中从左到右第i张工作表)移动工作表代码:Sub SortSheet()Dim WsCount As IntegerDim WsArray() As StringDim Ws As WorksheetOn Error Resume NextWsCount = ActiveWorkbook.Worksheets.Count ReDim WsArray(1 To WsCount) If ActiveWorkbook.ProtectStructure ThenMsgBox & " 被保护,不能进行排序,请解除保护后排序", _vbCritical, "不能排序工作表"Exit SubEnd IfFor Each Ws In ActiveWorkbook.Worksheetst = t + 1WsArray(t) = Next Ws'对数组进行排序For i = 1 To UBound(WsArray) - 1For j = i + 1 To UBound(WsArray)If WsArray(i) > WsArray(j) Thent = WsArray(i)WsArray(i) = WsArray(j)WsArray(j) = tEnd IfNext jNext i'利用Move方法以及Sheets(i)移动工作表,按指定的顺序排列For i = 1 To WsCountWorksheets(WsArray(i)).Move before:=Sheets(i) Next iEnd Sub第七章批注1、Comment为Range对象的属性2、Comments返回指定工作表中所有的批注,可以利用For each对工作表中所有批注循环题目:(1)根据批注的作者,删除批注(2)隐藏工作表中所有批注(3)为区域中添加批注(4)测试Comments(index)返回指定工作表中第index个批注Sub 统计批注个数()Dim Flag As Comment'1、Comments返回指定工作表中所有的批注'2、用Comment属性返回一个Comment对象For Each Flag In mentst = t + 1Next FlagMsgBox "活动工作表中共有:" & t & "个批注", vbOKOnly, "统计批注个数" End SubSub CountComment()Dim Flag As Range'利用err来判断是否发生错误For Each Flag In edRangeOn Error Resume Nextt = ment.TextIf Err = 0 Then k = k + 1 Next FlagMsgBox "活动工作表中共有:" & k & "个批注", vbOKOnly, "统计批注个数" End SubSub 选定批注单元格()Dim a() As RangeDim Flag As RangeReDim a(ments.Count) For i = 1 To ments.CountSet a(i - 1) = ments(i).ParentNext iSet Flag = aFlag.SelectEnd SubSub selectcomment()'使用编辑定位功能,定位批注,选定单元格Cells.SpecialCells(xlCellTypeComments).SelectEnd SubSub 显示或隐藏批注()Dim Flag As CommentFor Each Flag In mentsIf Flag.Visible = True ThenFlag.Visible = FalseElseFlag.Visible = TrueEnd IfNext FlagEnd SubSub DisHideComment()'利用application的displaycommentindicator属性来显示隐藏批注'Indicator表示批注的标识符If Application.DisplayCommentIndicator = xlCommentAndIndicator Then Application.DisplayCommentIndicator = xlCommentIndicatorOnlyElseApplication.DisplayCommentIndicator = xlCommentAndIndicatorEnd IfEnd SubSub 输出所有批注()'在Sheet2工作表中返回Sheet1工作表中所有批注'这里使用ment.text返回批注中的内容Dim Flag As CommentDim t As Integeri = 1With Worksheets("Sheet2").Cells.Clear.Cells(1, 1) = "第n个批注".Cells(1, 2) = "批注地址".Cells(1, 3) = "批注内容"For Each Flag In Worksheets("Sheet1").Commentsi = i + 1t = t + 1.Cells(i, 1) = t.Cells(i, 2) = Flag.Parent.Address.Cells(i, 3) = ment.TextNext Flag.Columns("B:B").EntireColumn.AutoFit.Columns("C:C").ColumnWidth = 34.Cells.EntireRow.AutoFitEnd WithEnd SubSub 改变批注颜色()Dim Flag As CommentFor Each Flag In mentsFlag.Shape.Fill.ForeColor.SchemeColor = Int((80) * Rnd + 1) '1-80 Flag.Shape.TextFrame.Characters.Font.ColorIndex = Int((56) * Rnd + 1) '1-56Next FlagEnd SubSub 添加批注()Dim Flag As RangeOn Error Resume NextFor Each Flag In ActiveSheet.Range("g8:i17")t = t + 1Flag.AddComment.Text "hner:这是我添加的第" & t & "个批注" & Chr(13)+ Chr(10) & DateNext FlagEnd SubSub test()MsgBox ActiveSheet.Range("g8").Comment.AuthorEnd SubSub 删除批注()Dim Flag As RangeFor Each Flag In ActiveSheet.Range("g8:i17")ment.DeleteNext FlagEnd Sub第十章自定义函数函数一:计算销售佣金题1:根据销售额和对应的佣金率计算 =Sales*Rate 题2:根据销售额和对应的佣金率以及工作年限计算,工作每满一年佣金在原来的基础上增加一个百分点=Sales*Rate*(1+Year/100)条件临界点佣金率[0,10000) 0 0.08[10000,20000) 10000 0.105[20000,40000) 20000 0.12[40000,无穷) 40000 0.14计算方法:1、利用vlookup函数的模糊查找:=VLOOKUP(B2,$B$14:$C$17,2,TRUE)*B2 定期维护佣金率2、利用if函数结合&连接符突破if七层嵌套问题:=IF(AND(B2>=0,B2<$B$15),B2*$C$14,"")&IF(AND(B2>=$B$15,B2<$B$16),B2*$C$15,"")&IF(AND(B2>=$B$16,B2<$B$17), B2*$C$16,"")&IF(AND(B2>=$B$17),B2*$C$17,"")3、利用自定义函数,代码如下:Function Commission1(Sales, years) '计算销售佣金,工作每满一年,销售佣金在原来的基础上增加一个百分点 Const Rate1 = 0.08Const Rate2 = 0.105Const Rate3 = 0.12Const Rate4 = 0.14Select Case SalesCase 0 To 9999.99 'Case a to b 表示[a,b]两边都是闭区间Commission1 = Sales * Rate1Case 10000 To 19999.99Commission1 = Sales * Rate2Case 20000 To 39999.99Commission1 = Sales * Rate3Case ElseCommission1 = Sales * Rate4 End Select'每工作满一年,佣金在原来的基础上增加1个百分点Commission1 = Commission1 * (1 + years / 100)End FunctionSub 计算销售佣金()’在工作表中设计一个窗体按钮,执行此代码Dim SalesDim years As IntegerSales = Val(InputBox("请输入销售额:", "计算销售佣金"))years = Val(InputBox("请输入工作年限:", "计算销售佣金"))y = MsgBox("您的佣金为:" & Commission1(Sales, years), vbYesNo, "计算销售佣金") If y = vbYes Then '这里使用msgbox信息框,当单击是的时候,调用该过程本身计算销售佣金 End IfEnd Sub函数二:随机抽取某区域中的一个单元格目的:理解Optional定义变量和非易失性函数Volatile1、易失性函数:顾名思义该函数很容易改变,也就是无论何时在工作表任意单元格输入数据,易失性函数都需要重新计算,结合本例,只要在任意单元格输入数据,易失性函数都重新计算2、非易失性函数:顾名思义该函数不容易改变,也就是只有在函数中的参数值发生变化时,非易失性函数才重新计算,否则不计算,结合本例,只有在a1:a10输入数据,非易失性函数才重新计算,否则不计算3、Optional申明变量,表示该变量为可选参数4、假如Region为一个range对象区域,那么Region(i)表示区域Region中第i个对象代码如下:Function UnderstandVolatile(Region As Range, Optional FlagBoolean As Boolean = False)'利用optional定义变量表示该变量为可选参数'理解非易失性函数'函数功能:随机抽取Region区域中的一个单元格值'当application.volatile true时,表示易失性函数Application.Volatile FlagBoolean'产生[a,b]之间的随机整数 Int(rnd()*(b-a+1)+1)UnderstandVolatile = Region(Int(Rnd() * (Region.Count) + 1))End Function函数三:利用Optional来确定自定义函数是一个多单元格数组函数还是一个普通函数 MonthNames(OptionalMindex)函数功能:返回月份可选参数:1、当无参数时,返回一个多单元格数组公式,横向数组,将一个数组直接赋值给自定义函数2、当参数大于等于1时,返回对应月份,如参数为1,则返回Jan,参数为13,也同样返回Jan3、当参数小于等于0时,返回一个多单元格数组公式,垂直数组代码如下:Function MonthNames(Optional Mindex) '返回月份'Ismissing(t)表示t是否传递给过程,如果没有传递,则返回trueDim AllNames As VariantAllNames = Array("Jan", "Feb", "Mar", _"Apr", "May", "Jun", "Jul", "Aug", _"Sep", "Oct", "Nov", "Dec")If IsMissing(Mindex) ThenMonthNames = AllNamesElseSelect Case MindexCase Is >= 1'如果参数为1,则返回Jan,为数组的第一个元素,故应该用(Mindex-1 mod 12),数组的下限为0,即AllNames(0)MonthNames = AllNames((Mindex - 1) Mod 12)Case ElseMonthNames = Application.WorksheetFunction.Transpose(AllNames)End SelectEnd IfEnd Function这里使用一个ismissing函数,该函数主要是用来测试是否将参数传递给过程,如果没有传递,则返回TRUE。
2024版VB程序设计应用程序开发实例[1]
2024/1/28
17
05
数据库应用与集成
2024/1/28
18
数据库概述及连接方式
2024/1/28
数据库基本概念 数据库是长期存储在计算机内、有组织的、可共享的数据 集合,具有数据结构化、数据独立性、数据冗余度小等特 点。
数据计算
利用VB中的算术运算符和函数,对数据进行各种计算,如加、减、乘、 除、求余等运算,以及使用数学函数进行复杂的数学计算。
2024/1/28
03
数据排序与查找
通过VB中的数组、列表等数据结构,实现对数据的排序和查找功能,
如冒泡排序、选择排序等排序算法,以及线性查找、二分查找等查找算
法。
15
图形图像处理功能
使用Command对象执行 SQL命令,如查询、插入、 更新、删除等,可以通过 参数化查询来防止SQL注 入攻击。
使用DataReader对象读 取查询结果,可以通过循 环遍历逐行读取数据,也 可以使用DataSet对象将 数据加载到内存中进行处 理。
2024/1/28
使用Transaction对象对 数据库操作进行事务管理, 确保数据的完整性和一致 性。
03
7
VB编程环境
2024/1/28
01
VB编程环境包括集成开发环境(IDE)和运行时环境。
02
IDE提供代码编辑器、窗体设计器、调试器等开发工 具,方便程序员进行应用程序开发。
03
运行时环境提供VB程序运行所需的库文件和解释器, 确保程序能够正确执行。
8
VB基本语法
VB基本语法包括变量、数据类型、 运算符、控制结构等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用VB编写一个密码解锁界面
我也是刚开始学VB语言,VB语言很强大,有别于其它语言,操作性很强,是很富有创造性的电脑语言。
下面是我看了两天书后编写的一个小程序:
功能是能建立两个窗口,一个密码窗口,一个为修改密码窗口。
当密码输入正确后才能打开或者做一些事情,点击修改密码跳往第二个界面,修改成功后以修改的密码为解锁密码。
中间有错误提示和误操作提示。
①先建立一个小窗口,如下图:
帐号一的“textbox”编号为“text1”,后面一次类推,command指令为1。
②程序的编写
Text1:
初始帐号为“07823”,如果可以的话可以给加入更多的功能,比如记忆多个账户和多对密码之类的等等。
2、text2
3、command1
初始密码为“1234”,open函数可以打开文件,自己可以设置文件路径。
4、command2
跳往第二个界面,隐藏第一界面。
5、初始指令
6、全局变量
全局变量本界面可以修改、其它界面可以调用的变量。
②建立第二个窗口
Text的序号从上到下依次顺序排列,command的命令一次从左到右排列
③第二个窗口的程序编写
1、Text1:
Private Sub Text1_LostFocus()
Dim b As Integer
Dim pw_1 As String, pw_2 As String
pw_2 = Form1.m
pw_1 = Text1.Text
If pw_1 <> pw_2 Then
b = MsgBox("密码错误", 5 + vbExclamation, "错误提示")
End If
End Sub
2、text2:
Private Sub Text2_LostFocus()
If Text2.Text = "" Then
MsgBox "新密码不能为空"
End If
End Sub
3、text3:
Private Sub Text3_LostFocus()
If Text2.Text <> Text3.Text Then
MsgBox "两次输入密码不一样"
Text2.Text = ""
Text3.Text = ""
Text2.SetFocus
End If
End Sub
4、command1:
Private Sub Command1_Click() If Text2.Text = Text3.Text Then n = Text2.Text
End If
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Form1.Show
Form2.Hide
End Sub
5、command2:
Private Sub Command2_Click() Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Form1.Show
Form2.Hide
End Sub
初始设置(Form)
Private Sub Form_Load()
Text1.PasswordChar = "*" Text1.Text = ""
Text2.PasswordChar = "*" Text2.Text = ""
Text3.PasswordChar = "*" Text3.Text = ""
End Sub
全局变量申明
Public n As String。