第一篇:VB操作wincc脚本心得
Vbs 操作wincc画面脚本总结
一: 不使用变量单纯的操作界面
1.操作某个画面中控件的属性 如 Home1.Pdl(总窗体)下的 画面窗口2(画面窗口)
Sub OnClick(ByVal Item)
Dim objCircle Dim screenname Dim pwname Set objCircle= ScreenItems(“圆1”)objCircle.Radius = 60
Set screenname=HMIRuntime.Screens(“Home1”)
//获取要操作的窗体
Set pwname=screenname.ScreenItems(“画面窗口2”)
//获取要操作的控件,这里填入你要操作的控件名
MsgBox(objCircle.Radius)
//输出圆的半径
MsgBox(pwname.Picturename)
//输出当前画面窗口2的名字 End Sub
注意
当调用某窗体下的某控件的某个属性时,需要声明两个对象,一个接纳这个控件,一个接纳值
例如
Dim object Dim value Set object =HMIRuntime.Screens(“Home1”).ScreenItems(“画面窗口2”)Set value=object.picturename
2.更改画面窗口的对象
Sub OnClick(Byval Item)
Dim opObject Set opObject=HMIRuntime.Screens(“Home1”).ScreenItems(“画面窗口2”)opObject.PictureName=“Page1.Pdl” End Sub 3.设置文本
Set titleTxt=HMIRuntime.Screens(“Home1”).ScreenItems(“静态文本2”)titleTxt.Text =titleTxt.Text+“EF” //获取文本的值并追加字符
4.vb 字符串函数
VB的字符串截取函数有Left(字符串,n),返回字符串前N个字符;Mid(字符串,p,n),从第p个字符开始,向后截取N个字符;right(字符串,n),返回字符串的最后n个字符。
获取下标
VB中的InStr()函数与InStrRev()函数:
都是在主字符串当中搜寻寻找子字符串,返回找到的子字符串在主字符串中出现的位置; 不同在于;
InStr()函数,从左开始向右寻找,InStrRev()函数,从右开始向左寻找。
截取 right 和left
获取长度 Len 二:操作变量
1.Dim objTag Dim AText Set objTag = HMIRuntime.Tags(“a”)
//获取变量 objTag.Read
//执行读取
Set AText=ScreenItems(“静态文本2”)//获取控件 AText.Text=objTag.Value //给控件写入值 objTag.Value =100 //给目标变量写入值 objTag.Write
//执行写入
2.vb 中 Switch 语句的变体
Dim objTag Dim AText Set objTag = HMIRuntime.Tags(“a”)
//获取内部变量a的值
objTag.Read
//必须要有这一步,这是读取操作,同理如果改写值必须要有ogjTag.write Set AText=ScreenItems(“静态文本2”)
Select Case objTag.Value Case 1 AText.Text=“a” Case 2 AText.Text=“b” Case Else AText.Text=objTag.Value End Select
三.弹出对话框
设置
buttons 参数可以有以下值:
常数 值 描述
vbOKOnly 0 只显示确定按钮。vbOKCancel 1 显示确定和取消按钮。
vbAbortRetryIgnore 2 显示放弃、重试和忽略按钮。vbYesNoCancel 3 显示是、否和取消按钮。vbYesNo 4 显示是和否按钮。
vbRetryCancel 5 显示重试和取消按钮。vbCritical 16 显示临界信息图标。vbQuestion 32 显示警告查询图标。vbExclamation 48 显示警告消息图标。vbInformation 64 显示信息消息图标。vbDefaultButton1 0 第一个按钮为默认按钮。vbDefaultButton2 256 第二个按钮为默认按钮。vbDefaultButton3 512 第三个按钮为默认按钮。vbDefaultButton4 768 第四个按钮为默认按钮。
vbApplicationModal 0 应用程序模式:用户必须响应消息框才能继续在当前应用程序中工作。
vbSystemModal 4096 系统模式:在用户响应消息框前,所有应用程序都被挂起。
第一组值(0-5)用于描述对话框中显示的按钮类型与数目;第二组值(16, 32, 48, 64)用于描述图标的样式;第三组值(0, 256, 512)用于确定默认按钮;而第四组值(0, 4096)则决定消息框的样式。在将这些数字相加以生成 buttons 参数值时,只能从每组值中取用一个数字。返回值
MsgBox 函数有以下返回值:
常数 值 按钮 vbOK 1 确定 vbCancel 2 取消 vbAbort 3 放弃 vbRetry 4 重试 vbIgnore 5 忽略 vbYes 6 是 vbNo 7 否
下面的例子演示了 MsgBox 函数的用法:
Dim MyVar
MyVar = MsgBox(“Hello World!”, 65, “MsgBox Example”)' MyVar contains either 1 or 2, depending on which button is clicked.你要求是有是和否两个按钮那么MyVar = MsgBox(“Hello World!”, 65, “MsgBox Example”)中的65改成4就可以了!
vbs脚本中:
if msgbox(“确实要启动设备吗?”,4,“警告”)=6 then
hmiruntime.tags(“tag1”).write 1
end if
第二篇:VB心得(范文模版)
VB心得
这学期选修了VB这门学科,想从学习中对计算机有更深刻的认知,也对我大学中的2级考试奠定基础。那么谈谈这学期的学习中对vb的认知和心得体会。
在日常生活中我们经常会有这样的体会,就是去做自己感兴趣的事情时,时间好像一直不够用,而从事自己不喜欢干的事情时候,好像度日如年一般。我刚接触VB是第一次上选修课,老师给我们讲课,我们一人一台机对着电脑屏幕看老师的课件,上面全是VB的专有名词,一个都不懂,老师叫我们实操,我对着VB软件系统无从下手。之后就去图书馆查阅了有关VB教程的书,决心自学。但每次看到一行行枯燥的程序代码眼皮不自觉地就要打架。后来几乎是“头悬梁,锥刺股”才得入门。现在想来,这种入门大可不必。严谨求实的态度是非常正确的,但既然面对初学者,也许换一种思路更贴切。少一些隐晦,多一些直观;少一些专业术语,多一些例子。
慢慢地,我了解到VB的特点,VB是在原来的Basic语言基础上发展而来的.Visual指的是可视的图形用户界面开发方法.不需编写大量代码去描述界面元素的外观和位置,只要把预先建立的对象添加到屏幕上的某点即可.如果使用者诸多PAINT之类的绘图程序,则实际上已经掌握了创建用户界面的必要技巧.BASIC指的是B语言,一种在计算机技术发展历史上应用得最为广泛的语言之一.VB在原来BASIC语言的基础上进一步发展至今包含了数百条语句,函数及关键词,其中很多和WINDOWS GUI有直接关系,VB不仅是可视语言,而且是面向对象的编程语言.其特点是概念多,实践性强,涉及面广.之后,了解到一些基本的概念,含义.例如类,就是创建对象实例的模板包含了创建的属性描述和行为特征的定义.而此中的对象又是类的一个实例,继承了类的属性,方法,而VB中长用的对象有窗体,控件等.但我们在建立之前必须清楚对象的三要素:属性,方法和事件.而建立程序的步骤大致可分为:(1)启动程序,装载和显示窗体.(2)窗体等待事件的发生.(3)事件发生时,执行对应的事件发生过程.(4)再重复的过程。(5)最后直接遇到“END”结束语句结束程序的运行或按“结束”强行停止程序的运行.再用VB创建一个应用程序,第一步骤是创建窗体,它是用户与应用程序进行交互操作的可视部分,窗体是创建界面的基本构造模块,也是创建应用程序所使用的对象.而后必要设置窗体的属性,从而构出窗体的外观,设置好的窗体,窗体就作为对象,能够对其定义的事件作出响应,这也是所谓的窗体事件,而窗体事件又包括窗体本身事件,键盘事件和鼠标事件.在了解窗体基本知识就还应了解VB的语言基础,其中包括了代码模块(窗体模块,标准模块,类模块),注释,分行和续行,数据类节(字节型,逻辑型,数值型,日期型),变量与常数,运算符与表达式,数组,控制结构,子过程和函数.同时,为了编程,我们还应培养良好的编程习惯,首先是对象,变量及过程的命名约定,然结构化编码约定.学习VB程序设计后,增加对此的认识,深入学习VB程序就可掌握新的软件,新的编程环境,学习此课程,让我学会使用开发环境,开发工具的方法,并锻炼我的意志,令我多一门技术。总而言之,这学期的VB课程让我收获了很多,为我下学期的计算机2级考试打下了基础。
第三篇:VB心得
在这次VB课程设计过程中,我最大的收获就是有二,一是与其临渊羡鱼,不如退而结网,无论什么事情,一定要去做,困难在你的勇气和毅力下是抬不了头的。二是深刻地认识到,做事情一定要有耐心,无论遇到什么困难,都不能心烦,否则就很难把事情好。一开始,我以为三天就可以把课程设计搞好,谁知道我们搞了差不多一个星期。界面的设计倒是没什么问题,最有问题的就是编程了,编程是非常耗时和精力的。这一点我是深有体会的。有一次我的代码有点错误,但我看了一遍又一遍,还是找不出问题所在,最后发现就是少了一个空格,就是一个空格花了我整整一个上午。唉!难怪我经常听到说,编程实在是太麻烦了,看到头都大了,看到就心烦了。就是一个小小的问题就让你花去一个早上的时间。所以我们无论做任何事情都要细心和耐心。无论做什么事情,我认为最重要的是在做事过程中学到东西,吸取教训。
这是我第一次系统的、完整的接触到软件设计的全过程。在这次课程设计中我得到了锻炼,也有很多体会。以前仅仅是对软件开发有一个大体的印象,通过这次VB课程设计,我对软件的开发有了切身的体会。软件并不像我原来所想的那样神秘,而是有着一个相对固定的模式和流程。软件的制作是一个系统的工程,需要我们掌握多方面的知识。在此次设计中,觉得自己的知识有很大的欠缺,遇到了许多不懂的东西,无奈下去翻书才发现许多东西书上都有,只怪平常太少看书,听课又不够认真。以前学习计算机语言,总是静不下心来,不能认真的看书。这次的课程设计,为了顺利的完成编程任务,认真的细读了VB课本,有了一定的心得体会。所以在以后的学习中,自己一定要全身心投入,这样学习才会有效率,才会有效果。
第四篇:VB操作word总结
请耐心看完:问题出现得较复杂。
我的目的:
将多个文档内容逐一拷贝粘贴到另一文档后面
我的方法:
wordapp=new word.application
Set doc = wordapp.Documents.Add
while
pathTemp = App.Path & “temp.doc”
LoadFile rs(“word”), pathTemp
Set doctemp = wordapp.Documents.Open(pathTemp)
doctemp.Content.Select
wordapp.Selection.copy
Set myRange = doc.Range(Start:=doc.Content.End 缺少参数 3文件不存在 ' '*************************************************************** Public Function ReplacePic(FindStr As String, Optional Time As Integer = 0)As Integer Attribute ReplacePic.VB_Description = “查找FindStr,并替换为PicFile所指向的图片文件,替换次数由time参数确定,为0时,替换所有” '******************************************************************************** '
从Word.Range对象mysel中查找所有FindStr,并替换为PicFile图像 ' 替换次数由time参数确定,为0时,替换所有
'******************************************************************************** If Len(C_PicFile)= 0 Then C_ErrMsg = 2 Exit Function End If Dim i As Integer Dim findtxt As Boolean mysel.Find.ClearFormatting mysel.Find.Replacement.ClearFormatting With mysel.Find.Text = FindStr.Replacement.Text = “".Forward = True.Wrap = wdFindContinue.Format = False.MatchCase = False.MatchWholeWord = False.MatchByte = True.MatchWildcards = False.MatchSoundsLike = False.MatchAllWordForms = False End With mysel.HomeKey Unit:=wdStory findtxt = mysel.Find.Execute(Replace:=True)If Not findtxt Then ReplacePic = 0 Exit Function End If i = 1 Do While findtxt mysel.InlineShapes.AddPicture FileName:=C_PicFile If i = Time Then Exit Do i = i + 1 mysel.HomeKey Unit:=wdStory findtxt = mysel.Find.Execute(Replace:=True)Loop ReplacePic = i End Function Public Function FindThis(FindStr As String)As Boolean Attribute FindThis.VB_Description = ”查找FindStr,如果模板中有FindStr则返回True“ If Len(FindStr)= 0 Then C_ErrMsg = 2 Exit Function End If mysel.Find.ClearFormatting mysel.Find.Replacement.ClearFormatting With mysel.Find.Text = FindStr.Replacement.Text = ”“.Forward = True.Wrap = wdFindContinue.Format = False.MatchCase = False.MatchWholeWord = False.MatchByte = True.MatchWildcards = False.MatchSoundsLike = False.MatchAllWordForms = False End With mysel.HomeKey Unit:=wdStory FindThis = mysel.Find.Execute End Function Public Function ReplaceChar(FindStr As String, RepStr As String, Optional Time As Integer = 0)As Integer Attribute ReplaceChar.VB_Description = ”查找FindStr,并替换为RepStr,替换次数由time参数确定,为0时,替换所有“ '******************************************************************************** '
从Word.Range对象mysel中查找FindStr,并替换为RepStr ' 替换次数由time参数确定,为0时,替换所有
'******************************************************************************** Dim findtxt As Boolean If Len(FindStr)= 0 Then C_ErrMsg = 2 RaiseEvent HaveError Exit Function End If mysel.Find.ClearFormatting mysel.Find.Replacement.ClearFormatting With mysel.Find.Text = FindStr.Replacement.Text = RepStr.Forward = True.Wrap = wdFindContinue.Format = False.MatchCase = False.MatchWholeWord = False.MatchByte = True.MatchWildcards = False.MatchSoundsLike = False.MatchAllWordForms = False End With
If Time > 0 Then For i = 1 To Time mysel.HomeKey Unit:=wdStory findtxt = mysel.Find.Execute(Replace:=wdReplaceOne)If Not findtxt Then Exit For Next If i = 1 And Not findtxt Then ReplaceChar = 0 Else ReplaceChar = i End If Else mysel.Find.Execute Replace:=wdReplaceAll End If End Function
Public Function GetPic(PicData()As Byte, FileName As String)As Boolean Attribute GetPic.VB_Description = ”把图像数据PicData,存为PicFile指定的文件“ '******************************************************************************** '
把图像数据PicData,存为PicFile指定的文件
'******************************************************************************** On Error Resume Next If Len(FileName)= 0 Then C_ErrMsg = 2 RaiseEvent HaveError Exit Function End If Open FileName For Binary As #1 If Err.Number <> 0 Then C_ErrMsg = 3 Exit Function End If '二进制文件用Get,Put存放,读取数据 Put #1, , PicData Close #1 C_PicFile = FileName GetPic = True End Function
Public Sub DeleteToEnd()Attribute DeleteToEnd.VB_Description = ”删除从当前位置到结尾的所有内容“ mysel.EndKey Unit:=wdStory, Extend:=wdExtend mysel.Delete Unit:=wdCharacter, Count:=1 End Sub Public Sub MoveEnd()Attribute MoveEnd.VB_Description = ”光标移动到文档结尾“ '光标移动到文档结尾 mysel.EndKey Unit:=wdStory End Sub Public Sub GotoLine(LineTime As Integer)mysel.GoTo What:=wdGoToLine, Which:=wdGoToFirst, Count:=LineTime, Name:=”“ End Sub Public Sub OpenDoc(view As Boolean)Attribute OpenDoc.VB_Description = ”打开Word文件,View确定是否显示Word界面“ On Error Resume Next '******************************************************************************** '
打开Word文件,并给全局变量mysel赋值
'******************************************************************************** If Len(C_TemplateDoc)= 0 Then mywdapp.Documents.Add Else mywdapp.Documents.Open(C_TemplateDoc)End If If Err.Number <> 0 Then C_ErrMsg = 4 RaiseEvent HaveError Exit Sub End If
mywdapp.Visible = view mywdapp.Activate Set mysel = mywdapp.Application.Selection 'mysel.Select
End Sub Public Sub OpenWord()On Error Resume Next '******************************************************************************** '
打开Word程序,并给全局变量mywdapp赋值
'******************************************************************************** Set mywdapp = CreateObject(”word.application“)If Err.Number <> 0 Then C_ErrMsg = 1 RaiseEvent HaveError Exit Sub End If End Sub Public Sub ViewDoc()Attribute ViewDoc.VB_Description = ”显示Word程序界面“ mywdapp.Visible = True End Sub Public Sub AddNewPage()Attribute AddNewPage.VB_Description = ”插入分页符“ mysel.InsertBreak Type:=wdPageBreak End Sub Public Sub WordCut()Attribute WordCut.VB_Description = ”剪切模板所有内容到剪切板“ '保存模板页面内容 mysel.WholeStory mysel.Cut mysel.HomeKey Unit:=wdStory End Sub Public Sub WordCopy()Attribute WordCopy.VB_Description = ”拷贝模板所有内容到剪切板“ mysel.WholeStory mysel.Copy mysel.HomeKey Unit:=wdStory End Sub Public Sub WordDel()mysel.WholeStory mysel.Delete mysel.HomeKey Unit:=wdStory End Sub Public Sub WordPaste()Attribute WordPaste.VB_Description = ”拷贝剪切板内容到当前位置“ '插入模块内容 mysel.Paste End Sub Public Sub CloseDoc()Attribute CloseDoc.VB_Description = ”关闭Word文件模板“ '******************************************************************************** '
关闭Word文件模本 '******************************************************************************** On Error Resume Next
mywdapp.ActiveDocument.Close False If Err.Number <> 0 Then C_ErrMsg = 3 Exit Sub End If End Sub Public Sub QuitWord()'******************************************************************************** '
关闭Word程序
'******************************************************************************** On Error Resume Next mywdapp.Quit
If Err.Number <> 0 Then C_ErrMsg = 3 Exit Sub End If End Sub Public Sub SavetoDoc()Attribute SavetoDoc.VB_Description = ”保存当前文档为FileName指定文件“ On Error Resume Next '并另存为文件FileName If Len(C_newDoc)= 0 Then C_ErrMsg = 2 RaiseEvent HaveError Exit Sub End If mywdapp.ActiveDocument.SaveAs(C_newDoc)
If Err.Number <> 0 Then C_ErrMsg = 3 RaiseEvent HaveError Exit Sub End If End Sub
Public Property Get TemplateDoc()As String Attribute TemplateDoc.VB_Description = ”模板文件名.“ TemplateDoc = C_TemplateDoc End Property Public Property Let TemplateDoc(ByVal vNewValue As String)C_TemplateDoc = vNewValue End Property Public Property Get newdoc()As String Attribute newdoc.VB_Description = ”执行CloseDoc方法时,将模板文件另存为此文件名指定的新文件.如果不指定,在执行CloseDoc方法时,将产生一个错误“ newdoc = C_newDoc End Property Public Property Let newdoc(ByVal vNewValue As String)C_newDoc = vNewValue End Property Public Property Get PicFile()As String Attribute PicFile.VB_Description = ”图像文件名“ PicFile = C_PicFile End Property Public Property Let PicFile(ByVal vNewValue As String)C_PicFile = vNewValue End Property Public Property Get ErrMsg()As Integer Attribute ErrMsg.VB_Description = ”错误信息.ErrMsg代码: 1-word没有安装 2-缺少参数 3-没权限写文件 4-文件不存在“ ErrMsg = C_ErrMsg End Property 请问如何正确杀掉word进程?
楼主btl19792008(btl19792008)2005-11-04 17:05:03 在 VB / 数据库(包含打印,安装,报表)提问 我的word程序运行几次,在资源管理器中就会出现很多word进程。
我的代码写的不对吗?
代码如下:
Dim appTemplate As Word.Application
Dim docTemplate As Word.Document
Set appTemplate = GetObject(, ”Word.Application“)
If Err.Number = 429 Then
Set appTemplate = New Word.Application
End If
Set docTemplate = Nothing
Set appTemplate = Nothing
问题点数:100、回复次数:9Top 楼bbhere(俺是二等小兵(baby,i'll be right here waiting for you))回复于 2005-11-04 17:31:33 得分 0 markTop 楼province_(雍昊)回复于 2005-11-04 18:03:37 得分 0 要先QUIT再NOTHING。Top 楼faysky2(出来混,迟早是要还嘀)回复于 2005-11-04 19:21:30 得分 0
'引用Microsoft Word X.0 Object Library
Private Sub Command1_Click()
On Error GoTo connecterr
Dim wordApp As Object
Set wordApp = CreateObject(”word.application“)
wordApp.Visible = True
Dim myDoc As Object
Set myDoc = wordApp.Documents.Open(”c:Test.dot“)
wordApp.selection.TypeText(” Hello“)
myDoc.Close '关闭
wordApp.Quit
'退出
Set myDoc = Nothing
Set wordApp = Nothing
Exit Sub
connecterr:
End Sub
Top 楼faysky2(出来混,迟早是要还嘀)回复于 2005-11-04 19:24:16 得分 0 Dim appTemplate As Word.Application
Dim docTemplate As Word.Document
Set appTemplate = GetObject(, ”Word.Application“)
If Err.Number = 429 Then
Set appTemplate = New Word.Application
End If
'**************
docTemplate.Close
appTemplate.Quit
'**************
Set docTemplate = Nothing
Set appTemplate = NothingTop 楼rainstormmaster(暴风雨 v2.0)回复于 2005-11-06 11:01:27 得分 0 没有office没法测试,不过我想你可以参考一下这个:
http://blog.joycode.com/mvm/archive/2004/04/25/20208.aspxTop 6 楼ahlegend(爱之传奇)回复于 2005-11-06 20:51:45 得分 0 QuitTop 楼szjhxu(天野)回复于 2005-11-06 22:01:48 得分 0 Dim appTemplate As Word.Application
Dim docTemplate As Word.Document
Set appTemplate = GetObject(, ”Word.Application")
If Err.Number = 429 Then
Set appTemplate = New Word.Application
End If
appTemplate.quit
Set docTemplate = Nothing
Set appTemplate = NothingTop 楼zhf_btj(闹闹)回复于 2005-11-15 21:54:47 得分 0 引用四楼
faysky2()
myDoc.Close '关闭
wordApp.Quit
'退出
Set myDoc = Nothing
Set wordApp = Nothing
这样应该能退干净了...我的就是..光用Close和Quit.没用Nothing就老有多余的进程
偶尔试下加个Nothing就OK了~~~~Top 楼lfh103856111()回复于 2005-11-16 12:46:09 得分 0 對,注意quit就行了
第五篇:VB实习心得
vb实训心得
这次实训,我觉得我真收获挺多的,以前愚昧无知,现在感觉是豁然开朗,visualbasic程序设计,刚开始学vb时不知道是干啥用的,我觉得很新鲜,于是乎很认真的听讲,我发现这门课程很有趣,老师幽默而却讲课生动,很吸引人,就这样,喜欢上vb了,感觉挺有用的,刚开始就想着还可以自己编软件,多好啊!其实真没那么容易啊,要学好vb也是一件不容易的事,经过这次实训,我觉得我的vb有大大的提升,总而言之,最重要的是多做例题多实践多锻炼多操
作。下面在介绍一下vb的发展过程: visualbasic(简称vb)是microsoft公司于1998年推出的可视化 开发工具。visual意为“可视化”,它是指开发图形用户界面(gui)时,无须编写大量代码去描述界面元素的位置和外观。basic是指basic语言,这是一种面向初学者的语言。visualbasic是基于basic的可视化程序设计语言,它继承了basic语言简单易懂的特点,采用面相对对象、事件驱动的编程机制,提供了直观的可视化程序设计方法。visualbasic是目前面向对象开发的主要语言之一,是最简单、最容易使用的语言,因此它是初学者学习可视化编程语言的最佳选择。在以windows操作系统为平台的众多可视化编程工具中,visualbasic具有易用性、通用性和开发效率高等特点,这使得 visualbasic特别适合于一般应用程序的开发,成为最流行的 windows应用程序开发语言。visualbasic6.0现有三种版本:学习
版、专业版和企业版。vb集成了一系列功能,在vb程序设计环境中能够完成程序的编写、调试、查错、运行、编译、保存等基本操作,同时还提供了大量程序
设计的“零部件”(在vb中称为函数、控件),能够很方便的根据
需要“组装”成一个复杂的程序。vb开发的应用程序的运行采用事件驱动原理。程序设计人
员不仅在程序设计时不需要考虑程序代码执行的先后问题,而且同一
个对象可以因用户的不同操作而产生不同的结果。vb中提供的编辑器不仅提供了典型的windows文字处理应
用程序的各种功能,如剪切、复制、粘贴等,使得程序的输入和修改
非常方便。而且在vb代码窗口输入代码时,对于vb中的对象的属性、方法,内置的函数、已定义的自定义函数、过程,已定义的变量等,能自动给出拼写提示。这样可大大减少编程人员的记忆量。
在vb开发环境下,通过api(application program interface)函数调用,可充分使用windows提供的各种系统资源,来扩充所开发的应用程序的功能。
vb全面支持windows系统的ole(object linking and embedding)技术,因此可以方便、快捷地实现不同应用程序之间的动态数据交换。
另外,在vb中,可以开发出包括标准exe(标准windows应
用程序)、activex控件、activex exe(对象的嵌入和链接)等多种
类型的应用程序。visual basic 语言的特点:
1、面向对象的可视化设计平台
2、事件驱动的编程机制
3、结构化的程序设计语言
4、强大的数据库功能和网络开发功能
5、充分利用windows资源
6、方便实用的程序指导 我们已经学了一学期vb了,大家知道vb都能做什么呢?记事
本、画图、做一些小游戏等等,其实还有好多好多东西都能用vb编 出来,世界著名的三大软件之一---spss就是用vb开发的。现代社
会,随着计算机科学技术飞速发展,vb也不断改进,他已经彻底摆
脱了“玩具语言”的形象,成为编制通用windows应用程序、数据库
应用程序、多媒体应用程序以及网络应用程序的理想工具。vb不仅
是一种编程语言,而且是集应用程序开发、调试和测试于一体的集成开发环境。
作为当代大学生,我们在以科技为主导的新世纪里,一定要掌握 vb这门课程,有利的发挥我们的才能和智慧,辉煌我们的人生!篇二:vb实习体会 vb实习体会
我对于visualbasic的学习,是从初中开始的。当时舟山市的中考政策有考级加分制度,考出全国二级能加10分。在此诱惑下报名参加培训班,考了两次,第一次笔试未通过,第二次才全通过。虽然考了两次,但是那时候已经能够编出几个没有什么逻辑性可言的小小游戏了。
所以这次认识实习,对我来说难度并不大。然而由于选课上面的原因,认识实习和电子实习冲突,导致我没有上过一节认识实习课。所以我的vb水平基本没有什么进步,这个五子棋,也是建立在初中的经验上的。vb本身也不是很难。尤其在gui编程上能够体现出来。我接触过几种gui的编程,桌面应用里面有swing、qt库的编程,另外还有android和j2me的编程。这些程序在gui开发上面虽然不能说难,但代码量也是很大的(qt和android有可视化辅助设计,稍微好一点)。而微软确实对程序员比较照顾,出了很多的编程方式都比较简易,比如windowsform式的编程,这在vb和c#上体现的非常到位,大大降低了程序员的门槛。值得一提的是,我初中的学校,超过三分之一的人通过了全国计算机等级考试二级vb,可见vb的简单程度。
虽然vb很简单,但说实话我不太喜欢vb。一方面是长期接触类c语法,让我对于类c语法的语言比较偏爱(java、c++、php等)。另一方面是vb是一种windowsonly的语言,可移植性比较差。
而从业界发展的视角来看,随着苹果焕发第二春以及google的崛起,微软的势力开始萎缩。在终端方面,高端智能手机以及平板电脑正悄悄取代个人pc机的地位。而互联网云计算的概念更加使得这些终端设备能够替代传统pc。而微软在这方面几乎可以被称作是惨败的。所以,开发windows桌面应用渐渐显得不入时,况且是用可移植性非常差的vb6来开发。
如果要我选择桌面应用程序开发工具的话,我恐怕会选择c#。它既有 windowsform的编程方式,拥有vb.net的几乎所有的便利特性,而且是类java 语法,使得程序员能够非常快的适应。另外,.net的可移植性比较强。c#运行在.net平台上,理论上可以像java那样易于移植,而且在linux上也出现了mono这样的开源版本。而vb6则不行。
当然,语言的问题总是微乎其微的。这一次实习最大的收获应该是大致了解了五子棋程序的原理。比如说怎么判断五子连珠等等。虽然没有更上一层楼编出ai,但是总的来说,这是我第一次用vb开发出一个像样点的游戏了。篇三:vb实习报告
实习报告
一、前言 实习时间 2012年12月21——12月26日 实习地点
杨凌职业技术学院南校区机房 实习目的
1、熟练掌握visuabasic语言的语法规则,visualbasic程序调试一般方法和技巧,并能利用visuabasic语言实现简单程序的设计。
2、掌握基本的模块设计与实现数据文件读写、人机界面设计等;
3、熟练运用测量平差及程序设计知识,编写测量程序;
4、进一步巩固《vb程序设计》课程中所学到的知识,熟练掌握并综合运用所学的编程技巧。实习要求
保持学习态度端正,尽量完善作业达到高质量高数量的作业
二、实习任务及内容
1、进入主界面面应有登陆界面,类似于“学生成绩查询系统”界面。
2、设计并实现系统的主界面,界面的名称可以自己取,比如测量程序集等
三、实习过程
编辑主界面
打开vb在form1中添加“用户名”、“密码”、“登陆”、“帮助”控件,以及修改对应的名称,并编辑如图所示的代码:
右单击窗体添加,并添加窗体;在visual basic中,是通过菜单编辑器建
立和管理菜单的,其打开方式为:在工具→菜单编辑器中;对form2进行一级、二级菜单编辑,并注意一级菜单和二级菜单的区别
主窗体:
接下来对各个二级菜单中的程序进行编辑:
1、进行对闭合水准路线计算的界面设置如下
点击“输入测站数及测站数”按钮输入基本信息,在点击计算,就和已在界面上显示出计算结果;
分别双击各个按钮进行编程:
2、对于地形图分幅与编号,围绕其核心公式: lw=(z-31)*6°+(d-1)δl le=lw+δl bs=(h-1)*4°+(4°/δb-c)δb bn= bs+δb 其代码为:
3、角度弧度转换:
输入角度的各项数值,点击“角度->弧度”就和显示出弧度值,同理也可实现弧度到角度的转换
4、距离相对误差计算:
5、三角高程界面设置及代码:
根据《地形测量》理论知识所知,在界面中需设置如图所示的控件,在输入已知数据框中输入数值,有核心计算公式h=dtan(α)+i-v即可算出高差,所以在编写代码时围绕其核心公式进行编程: 篇四:vb实训总结
这次我做的项目是用vb制作一个简单的成绩管理系统,在实训刚开始的时候,做的只是几个简单的界面,觉得其实还算比较简单的,到第二次实训的时候,老师说要用程序代码制作,而我们还没有具体学过vb程序代码,觉得又开始没有头绪了,感觉无从下手。
实训任务问题的解决:
通过网上搜寻相关资料以及查阅相关书籍了解更多关于vb的知识。到了第四次实训的时候,虽然能实现基本的排版后,但是调试的时候出现了很多问题。而且,有时候由于考虑不周以及粗心的缘故,代码方面存在很大的误差。老师们教了我们很多简单实用的技巧。也让我们意识到了要想全面完整的完成一个模块,首先要经行程序设计,全面分析会用到的东西及考虑可能会出现的情况。所以出现的问题也在老师的指导下以及团队的团结精神一起探讨,一起思索,顺利解决了发生的问题。
实训后体会: 在程序的编写上,有很多不足的地方,可能有些功能不太全面也不太完善,但我觉得自己是认认真真的做了,而且从中学到了很多,以后,我要把自己欠缺的知识点补习好,而且要学会举一反三,融会贯通,最重要的是改掉粗心马虎、考虑不周的习惯。我想我以后会将此程序完善好,争取能够运用到生活中去。
“纸上得来终觉浅,绝知此事要躬行!”在短暂的实习过程中,让我深深的感觉到自己在实际运用中的专业知识的匮乏,刚开始的一段时间里,对一些工作感到无从下手,茫然不知所措,这让我感到十分的难过。在学校总以为自己学的不错,一旦接触到实际,才发现自己知道的是多么少,这时才真正领悟到“学无止境”的含义。
“千里之行,始于足下”,这次短暂而又充实的实习,我认为对我走向社会起到了一个桥梁的作用,过渡的作用,是人生的一段重要的经历,也是一个重要步骤,对将来走上工作岗位也有着很大帮助。
突然想起鲁迅先生的一句话:这里本来没有路,只是走的人多了,也便成了路。生活的路呢?生活的路也是人走出来的,每个人一生总要去很多陌生的地方,然后熟悉,而接着又要启程去另一个陌生的地方。
作为初涉社会的开端,这里有许多回忆和联想,面对残酷的现实社会,每个人都无法选择逃避,除了勇敢面对,我们也无从选择!
走向明天,我依然走我自己!不再茫然? 此次实训的个人领悟:
在整个实训过程中,我每次都有许多新的体会,新的想法,想说的很多,就简要的谈谈我领会的八大心得:
一、坚持:开始每次实训后感觉自己都很茫然纠结,自己再
也不愿去想去做了,因为每次辛辛苦苦想出后的代码结
果都是运行出错,让人很头痛,很烦恼,但是整个实训
结束后才发现,做什么是都贵在坚持,就这个简单的计
算器也一样,一次一次的运行出错都是一个歌体会,一
次一次的总结,到最后才能制作出自己要做的任务。所
以说:坚持就是胜利。
二、勤动手:开始实训的时候觉得不会做,做不来就不做。
后来才发现做了点点就是积累点点,多做就有多收获,就像我们说的经典名言:vb没有学会,也没有教会,没有看会,只有练会的,勤动手是学习vb很重要的一个过程,甚至是一个关键。
三、虚心学习:在实训过程中,我们会碰到很多问题,有的是我们懂得的,也有很多是我们不懂的,不懂的问题我们要虚心向团队的成员或老师请教,同时我们也应该虚心的接受,不能认为自己懂得一些知识就飘然然。
四、错不可怕,就怕一错再错:
人无完人,每个人都有犯错的时候,不管是实训中还是在以后的学习中,第一次做错不要紧,但也主动认识到自己为什么做错了,要怎么改,不能一而再,再而三的犯错,知错能改才能获得更多的体会以及经验。
五、自主学习:
实训后不再像在高中学习那样,有老师,有作业,有考试,而是一切要字迹主动去学校去做,只要你想学习,学习的机会是有很多的。实训的时候,有比较多的休息时间,要利用好这些时间,少看一部小说,多了解一些感兴趣以及与自己专业相关的知识。
六、团队精神:
不管是实训还是将来的工作往往不是一个人的事情,是一个团队在完成一个项目,在实训或者将来工作的过程中如何保持和团队中其他同事的交流和沟通也是相当重要的。要有与别人沟通、交流的能力以及与个人合作的能力,合理的分工可以使大家在工作
中各尽所长,团结合作,配合默契,共赴成功。个人想要获得好的业绩,必须牢记一个规则,我们永远不能将个人利益凌驾于团队利益之上,在团队工作中,会出现在自己的协助下同时也从中受益的情况。反过来看,自己本身受益其中,这是保证自己成功的最重要的因素之一。
七、为人处事
作为学生面对的无非是同学、老师、家长,而工作后就要考虑更为复杂的关系,无论是和同事还是领导,都要做到妥善处理,多沟通,并要设身处地地从对方的角度换位思考,而不是只考虑自己的事。
经过这次实习,我从中学到了很多课本中没有的知识,在学习心态上也有很大改变,很多东西我们初到实训后才接触,所以我现在不能再像以前那样等待更好机会的到来,要能更好的发展,要尽快丢掉对学校的依赖心理,学会在学习中独立,敢于参加学校竞争,使自己能够快速成长起来。在以后的学习生活中,我会谦虚谨慎,勤奋努力,加强修养,以更开阔的胸襟,更智慧的头脑,更高尚的品德服务社会。这次实习只是我人生中一个奋斗的起点,我也相信自己一定会以更加饱满的热情和决心投入到未来的工作当中去,相信自己一定能交出更加满意的答卷。
八 心得体会:
在实训期间带给我不仅仅是一种经验,更是我人生的一笔财富。俗语说:纸上得来终觉浅。没有把理论用于实践是学得不深刻的。篇五:vb实训报告
《visual basic程序设计》
课程实习报告
实训题目:图书管理系统 实习时间:2013年6月 班级名称:计算机 指导教师:xxx老师 学生姓名:xxxxx
一、实训课程与题目:visual basic程序设计,图书管理系统的设
计与开发
二、实训时间和地点:一周,学院微机室
三、实训目的和要求
1、实训目的通过《图书管理系统》应用软件程序设计,使学生掌握使用visual basic6.0进行系统开发设计的方法及步骤;学会在vb程序中访问数据库,添加、删除记录,生成数据报表;学会vb可视化编程的方法和各种控件的应用;掌握mdi窗体的设计方法;窗体中菜单栏、工具栏、状态栏的设计方法及代码编写、窗体的添加载入、工程文件的编译、工程打包及文件展开安装等知识。
2、实训要求
设计《图书管理系统》应用软件,应能实现以下功能: ? 程序运行,首先调用登陆窗口,接受用户输入的用户名和密码,若为合法用户,调用mdi主窗体,若为非法用户,当登录超过三次后,退出程序。? mdi主窗体是一个多文档窗体,包含标题栏、菜单栏和状态栏。单击相
应的菜单命令,能完成相应功能: ? 图书借还管理:包括图书借阅处理、图书归还管理和退出三项功能。? 图书入库和查找:实现图书信息的添加、修改、删除和查找功能。? 读者登记和查找:实现读者信息的添加、修改、删除和查找功能。? 打印:实现打印借书证、打印图书清单功能 ? 设置系统用户:实现系统用户的添加、删除和修改功能
四、实训内容及方法步骤
1、需求分析 ? 设计的目的和意义
许多单位都建有图书馆,图书管理工作涉及图书入库和查询、读者登记和查找、借书和还书等常见事务处理,采用手工操作,速度慢、效率低,容易出差错,随着图书馆藏书量的剧增和读者人数的大增,有必要用现代化的管理手段解决繁杂的图书管理工作,提高工作效率和服务质量。因此,本案例针对以上需求,开发一个实用的图书管理系统,可供相关单位参考使用。? 设计技巧
? 数据表设计方法(减少冗余设计)? 公共标准模块设计 ? mdi窗体及子窗体设计 ? vb菜单设计方法(对于“一般操作员”用户,有若干菜单项不可用)? adodc控件设计方法
? 数据环境设计器data environment和数据报表data rpeort设计方法
2、系统结构
结构图如下:
3、数据库设计
? 创建数据库 ? 创建表
表1 book表结构 ? reader表,结构如下:
表2 reader 表结构 ? borrow表,结构如下:
表3 borrow表结构
? depart表,结构如下:
表4 depart表结构
表5 rlevel表结构 ? oper表,结构如下:
表6 oper表结构
4、创建工程
创建library.vbp工程,工程中包括module1.bas模块,dataenvironment1.dsr、datareport1.dsr、datareport2.dsr三个设计器,以及frmlogin.frm、mdifrmmenu.frm等九个窗体。