`
arfayr
  • 浏览: 26239 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

OrFlying VB.net版代码示例

阅读更多

OrFlying VB.Net 的开发主要考虑了vb.net 对面向对象的支持,所以抽象出了基类,同时增加了一些方法。另外考虑到对象层的运行效率,加入了缓冲层的支持。

命名:CClsXXXX 为基本类 CColXXXX 为集合类 CEngXXXX为引擎类

1 基类层示例

Public Class CClsParent

'实体对象是否为新的实体对象
Private mBIsNew As Boolean
'实体对象是否已经被删除
Private mBIsDel As Boolean
'实体对象是否被更改
Private mBIsDirty As Boolean
'实体对象属性赋值的时候是否需要进行数据校验
Private mBIsCheck As Boolean

 

Public Property IsNew() As Boolean

Get
Return mBIsNew
End Get

Set(ByVal Value As Boolean)
mBIsNew = Value
End Set
End Property

Public Property IsDel() As Boolean

Get
Return mBIsDel
End Get

Set(ByVal Value As Boolean)
mBIsDel = Value
End Set

End Property

Public Property IsDirty() As Boolean
Get
Return mBIsDirty
End Get

Set(ByVal Value As Boolean)
mBIsDirty = Value
End Set
End Property

Public Property IsCheck() As Boolean

Get
Return mBIsCheck
End Get

Set(ByVal Value As Boolean)
mBIsCheck = Value
End Set
End Property


End Class

Public Class CColParent
Implements System.Collections.IEnumerable

'集合的内部变量
Private mColObject As Collection
'表示该集合实例的内容是否为变化
Private mBIsChange As Boolean
'获得集合的元素的数目
Public ReadOnly Property Count() As Long
Get
Count = mColObject.Count
End Get
End Property

'设置或者返回系统是否发生变化的标志位
Public Property IsChange() As Boolean
Get
Return mBIsChange
End Get
Set(ByVal Value As Boolean)
mBIsChange = Value
End Set
End Property
'默认返回只读属性,返回指定Index的Item
Default Public ReadOnly Property Item(ByVal iObjIndexKey As Object) As Object
Get
Item = mColObject(iObjIndexKey)
End Get
End Property

'往集合里面添加一个Item
Public Function Add(ByVal iObjItem As Object, Optional ByVal iStrKey As String = "") As Boolean

Add = False
'添加元素
Try
'如果输入了关键字,加入关键字
If iStrKey = "" Then
mColObject.Add(iObjItem)
Else
mColObject.Add(iObjItem, iStrKey)
End If
Add = True
Catch ex As Exception
CGlbSharedMethods.AddSysErrMsg("CColParent.Add发生错误:" & ex.ToString, "集合类CDeptS添加错误,请联系关系员!")
Add = False
End Try

End Function
'根据关键字获得指定的Item
Public Function Find(ByRef oObjItem As Object, ByVal iObjItemKey As Object) As Boolean

Find = False
Try
oObjItem = mColObject(iObjItemKey)
Find = True
Catch ex As Exception
If ex.GetType.FullName = "System.ArgumentException" Then

Else
CGlbSharedMethods.AddSysErrMsg("CColParent:Find:" & ex.ToString, "返回数据发生错误!请联系管理员")

End If

End Try

End Function
'从集合中移除指定的Item
Public Function Remove(ByVal iObjIndexKey As Object) As Boolean

Try
mColObject.Remove(iObjIndexKey)
Remove = True
Catch ex As Exception
CGlbSharedMethods.AddSysErrMsg("CColParent.Remove发生错误:" & ex.ToString, "集合类CDeptS添加错误,请联系关系员!")
Remove = False
End Try

End Function

Public Function FindByProp(ByRef oObjItem As Object, ByVal iStrPropName As String, ByVal iPropValue As Object) As Boolean
FindByProp = False

Dim xItem As Object
For Each xItem In mColObject
If CallByName(xItem, iStrPropName, CallType.Get) = iPropValue Then
oObjItem = xItem
Return True
End If
Next
Return False
End Function
'清空对象
Public Function Clear() As Boolean

If mColObject Is Nothing Then Return True
Dim xObject As Object

For Each xObject In mColObject

xObject = Nothing
Next
'清空集合
mColObject = Nothing
'重新创建集合
mColObject = New Collection

Clear = True

End Function

'本属性允许用 For...Each 语法枚举该集合。
Public Function GetEnumerator() As System.Collections.IEnumerator Implements System.Collections.IEnumerable.GetEnumerator
'取消注释下行和更改下行以返回集合枚举数。
GetEnumerator = mColObject.GetEnumerator
End Function

'集合类初始化
Public Sub New()
MyBase.new()
mColObject = New Collection
End Sub
'集合类结束
Protected Overrides Sub Finalize()
mColObject = Nothing
MyBase.Finalize()

End Sub
End Class

2 缓冲管理类示例

'缓冲对象声明类

Module MdlEccCache

'ClsDept对象的缓冲容器,只要读一次,就自动加入,永久保存,直到最后退出。
Public gColDept As CColDept

End Module

'缓冲对象管理类

Public Class CCacheManage

'释放所有缓冲集合
Public Shared Function ReleaseAllCache() As Boolean
ReleaseAllCache = False
'释放Dept的缓冲对象
If Not (gColDept Is Nothing) Then ReleaseObjCache(gColDept)

'<%加入新的释放语句%>
ReleaseAllCache = True
End Function
'通用释放函数
Private Shared Sub ReleaseObjCache(ByRef ioCol As Object)

Dim xObject As Object
For Each xObject In ioCol
xObject = Nothing
Next
ioCol = Nothing

End Sub
'获得Dept对象的缓冲集合
Public Shared Function GetDeptCache(ByRef oColDept As CColDept) As Boolean
GetDeptCache = False

If gColDept Is Nothing Then gColDept = New CColDept()
oColDept = gColDept

GetDeptCache = True
End Function

End Class

3 业务类示例

Imports AgileSoft.CGlbDll

Public Class CClsDept
'继承实体基本类
Inherits CClsParent

Private strDeptName As String
Private strDeptDesc As String

Public Property DeptDesc() As String
Get
Return strDeptDesc
End Get
Set(ByVal Value As String)
strDeptDesc = Value
End Set
End Property


Public Property DeptName() As String
Get
Return strDeptName
End Get

Set(ByVal Value As String)
strDeptName = Value
End Set
End Property

 

End Class

Imports AgileSoft.CGlbDll

Public Class CColDept
'继承实体集合类
Inherits CColParent

'默认返回只读属性,返回指定Index的Item
Default Public Shadows ReadOnly Property Item(ByVal iObjIndexKey As Object) As CClsDept
Get
Item = MyBase.Item(iObjIndexKey)
End Get
End Property

'往集合里面添加一个Item
Public Shadows Function Add(ByVal iObjItem As CClsDept, Optional ByVal iStrKey As String = "") As Boolean

Return MyBase.Add(iObjItem, iStrKey)

End Function

Public Shadows Function Find(ByRef oClsDept As CClsDept, ByVal iStrDeptName As String) As Boolean
Return MyBase.Find(oClsDept, iStrDeptName)
End Function
End Class


'对象Dept的数据对象引擎类
Imports AgileSoft.CGlbDll
Imports System.Data.SqlClient

Public Class CEngDept


'************************************************************************
'方法说明:根据关键字返回对应的对象实例
'参数1: oClsDept为引用传递,返回的对象实例
'参数2: iStrDeptName为传入的对象的关键字
'参数3: oBFindObj表示对象是否成功获得
'************************************************************************
Public Function GetClsDeptByKey(ByRef oClsDept As CClsDept, ByVal iStrDeptName As String, Optional ByVal oBFindObj As Boolean = False) As Boolean

GetClsDeptByKey = False
Dim xStrSQL As String
'用作初始化对象的DataReader对象
Dim xDbReader As IDataReader

xStrSQL = "Select * from TestDept "
'加入外键条件
If iStrDeptName <> "" Then
xStrSQL = xStrSQL & " where DeptName='" & iStrDeptName & "'"
Else
CGlbSharedMethods.AddSysTipMsg("CEngDept:GetClsDeptByKey:关键字不能为空!", "")
End If
'首先检查缓冲区,如果已经存在直接返回,如果不存在,创建,并且加入缓冲区
Dim xColDept As CColDept
'返回缓冲集合
If CCacheManage.GetDeptCache(xColDept) Then
'如果对象已经存在,直接返回
If xColDept.Find(oClsDept, iStrDeptName) Then
oBFindObj = True
GoTo RightExit
End If
Else
CGlbSharedMethods.AddSysTipMsg("CEngDept:GetClsDeptByKey:无法返回缓冲集!", "")
End If

'缓冲区不存在,打开数据库实例实体对象,同时加入缓冲区
'返回属性,返回对象
If oClsDept Is Nothing Then oClsDept = New CClsDept()

'返回DataReader
If CGlbSharedMethods.GetReaderBySQL(xDbReader, xStrSQL) Then

If xDbReader.Read() Then

'实例化对象
oClsDept.DeptName = xDbReader("DeptName")
oClsDept.DeptDesc = xDbReader("DeptDesc")
xDbReader.Close()

'加入缓冲集
If Not (xColDept Is Nothing) Then
If Not xColDept.Add(oClsDept, oClsDept.DeptName) Then
CGlbSharedMethods.AddSysTipMsg("CEngDept:GetClsDeptByKey:无法将Dept对象加入缓冲集!", "")
End If
End If
'找到了数据,设置参数
oBFindObj = True
GoTo RightExit
Else
CGlbSharedMethods.AddSysTipMsg("CEngDept:GetClsDeptByKey:找不到指定的Dept对象!", "找不到相关部门!")
xDbReader.Close()

GoTo RightExit
End If

Else
'没有成功返回结果集
CGlbSharedMethods.AddSysErrMsg("CEngDept:GetClsDeptByKey:CallError CGlbSharedMethods.GetReaderBySQL", "")
GoTo CleanExit
End If

RightExit:
GetClsDeptByKey = True
CleanExit:
xDbReader = Nothing
xColDept = Nothing
End Function

'************************************************************************
'方法说明:根据条件返回对象实例的集合
'参数1: oColDept为引用传递,返回的对象的集合实例
'参数2: iStrSqlCondition为传入的获得对象的条件,为SQL格式
'参数3: oBFindObj表示对象的集合是否获得
'************************************************************************
Public Function GetColDeptBySQL(ByRef oColDept As CColDept, Optional ByVal iStrSqlCondition As String = "", Optional ByVal oBFindObj As Boolean = False) As Boolean

GetColDeptBySQL = False

Dim xStrSQL As String
Dim xClsDept As CClsDept
Dim xColDept As CColDept
Dim xBGetCache As Boolean
'用作初始化对象的DataReader对象
Dim xDbReader As IDataReader

xStrSQL = "Select * from TestDept "
'如果有额外条件,加入条件
If iStrSqlCondition <> "" Then
xStrSQL = xStrSQL & " where " & iStrSqlCondition
End If

'首先检查缓冲区,如果已经存在直接返回,如果不存在,创建,并且加入缓冲区
If CCacheManage.GetDeptCache(xColDept) Then
xBGetCache = True
Else
CGlbSharedMethods.AddSysTipMsg("CEngDept:GetColDeptBySQL:无法返回缓冲集!", "")
xBGetCache = False
End If

'返回属性,返回对象
If oColDept Is Nothing Then oColDept = New CColDept()


If CGlbSharedMethods.GetReaderBySQL(xDbReader, xStrSQL) Then

If xDbReader.Read() Then
'通过循环,把数据写入集合
Do
'如果缓冲集合中对象已经存在,直接返回。如果对象不存在,从数据库中实例化
If Not xBGetCache Or (xBGetCache And (Not xColDept.Find(xClsDept, xDbReader("DeptName")))) Then
'返回属性,返回对象
xClsDept = New CClsDept()
xClsDept.DeptName = xDbReader("DeptName")
xClsDept.DeptDesc = IIf(xDbReader("DeptDesc") Is DBNull.Value, "", xDbReader("DeptDesc"))

'加入缓冲区
If xBGetCache Then
If Not xColDept.Add(xClsDept, xClsDept.DeptName) Then
CGlbSharedMethods.AddSysTipMsg("CEngDept:GetClsDeptByKey:无法将Dept对象加入缓冲集!", "")
End If
End If
End If

'加入集合
If Not oColDept.Add(xClsDept, xClsDept.DeptName) Then
CGlbSharedMethods.AddSysErrMsg("CEngDept:GetColDeptBySQL:CallError CColDept.Add()", "")
xDbReader.Close()
GoTo CleanExit
End If
'清空对象
xClsDept = Nothing
oBFindObj = True

Loop Until Not xDbReader.Read
xDbReader.Close()
GoTo RightExit

Else
'查询结果中没有纪录
CGlbSharedMethods.AddSysTipMsg("CEngDept:GetColDeptBySQL:找不到指定的Dept对象!", "找不到相关部门!")
GoTo RightExit

End If

Else
'没有成功返回结果集
CGlbSharedMethods.AddSysErrMsg("CEngDept:GetColDeptBySQL:CallError CGlbSharedMethods.GetReaderBySQL", "")
GoTo CleanExit
End If

RightExit:
GetColDeptBySQL = True
CleanExit:
xClsDept = Nothing
xDbReader = Nothing

End Function
'更新一个对象的属性到数据库中
Public Function UpdateClsDept(ByRef iClsDept As CClsDept, Optional ByVal iBUpdateSubObj As Boolean = False) As Boolean
UpdateClsDept = False
'用来更新数据的ADO.Net数据对象
Dim xDataSet As DataSet
'命令对象,这里的SQL语句可以考虑使用属性代替
Dim xStrSQL As String
xStrSQL = "Select * from TestDept where DeptName='" & iClsDept.DeptName & "'"

Dim xTable As DataTable
Dim xRow As DataRow
'用来设置xTable的主键的DataColum数组
Dim xKey(1) As DataColumn
'返回缓冲区的引用
Dim xColDept As CColDept
Dim xBGetCache As Boolean
'首先检查缓冲区,如果已经存在直接返回,如果不存在,创建,并且加入缓冲区
If CCacheManage.GetDeptCache(xColDept) Then
xBGetCache = True
Else
CGlbSharedMethods.AddSysTipMsg("CEngDept:UpdateClsDept:无法返回缓冲集!", "")
xBGetCache = False
End If

'首先返回数据集合
If Not CGlbSharedMethods.GetDataSetBySQL(xDataSet, xStrSQL, "TestDept") Then
CGlbSharedMethods.AddSysErrMsg("CEngDept:UpdateClsDept:CallError CGlbSharedMethods.GetDataSetBySQL", "")
GoTo CleanExit
End If
If iClsDept.IsDel Or iClsDept.IsDirty Then
'如果没有纪录,报错退出
If xDataSet.Tables("TestDept").Rows.Count = 0 Then
CGlbSharedMethods.AddSysErrMsg("CEngDept:UpdateClsDept:结果集找不到数据,无法更新该对象!", "更新数据错误,请联系管理员!")
GoTo CleanExit
End If
End If
'更改数据
Try
xTable = xDataSet.Tables("TestDept")
If iClsDept.IsDel Then
xTable.Rows(0).Delete()
'从缓冲集合中移除
If xBGetCache Then
xColDept.Remove(iClsDept.DeptName)
End If
Else
If iClsDept.IsNew Or iClsDept.IsDirty Then
'根据IsNew和IsDirty确定xRow
If iClsDept.IsNew Then
xRow = xTable.NewRow
xTable.Rows.Add(xRow)
Else
'获得要更改的纪录
xRow = xTable.Rows(0)
End If
'更改纪录
xRow.BeginEdit()
'主键只有在增加的时候才能够被赋值
If iClsDept.IsNew Then xRow("DeptName") = iClsDept.DeptName
'增加其余字段信息
xRow("DeptDesc") = iClsDept.DeptDesc
xRow.EndEdit()

'如果返回缓冲集,加入缓冲集合
If xBGetCache Then
If Not xColDept.Add(iClsDept) Then
CGlbSharedMethods.AddSysTipMsg("CEngDept:UpdateClsDept:无法将Dept对象加入缓冲集!", "")
End If

End If
End If
End If

iClsDept.IsDel = False
iClsDept.IsDirty = False
iClsDept.IsNew = False

Catch ex As Exception
CGlbSharedMethods.AddSysErrMsg("CEngDept:UpdateClsDept:" & ex.ToString, "更新数据出现错误,请联系管理员!")
GoTo CleanExit
End Try

'更新数据到数据库中去
If Not CGlbSharedMethods.UpdateDataSet(xDataSet, "TestDept") Then
CGlbSharedMethods.AddSysErrMsg("CEngDept:UpdateClsDept:CallError CGlbSharedMethods.UpdateDataSet", "")
GoTo CleanExit
End If

RightExit:
UpdateClsDept = True
CleanExit:
xRow = Nothing
xTable = Nothing
xDataSet = Nothing
End Function
'更新一个集合中的全部的对象到数据库中
Public Function UpdateColDept(ByRef iColDept As CColDept, Optional ByVal iBUpdateSubObj As Boolean = False) As Boolean
UpdateColDept = False

Dim xDept As CClsDept
'用来更新数据的ADO.Net数据对象
Dim xDataSet As DataSet
'命令对象,这里的SQL语句可以考虑使用属性代替
Dim xStrSQL As String
xStrSQL = "Select * from TestDept"

Dim xTable As DataTable
Dim xRow As DataRow
'用来设置xTable的主键的DataColum数组
Dim xKey(1) As DataColumn

'返回缓冲区的引用
Dim xColDept As CColDept
Dim xBGetCache As Boolean
'首先检查缓冲区,如果已经存在直接返回,如果不存在,创建,并且加入缓冲区
If CCacheManage.GetDeptCache(xColDept) Then
xBGetCache = True
Else
CGlbSharedMethods.AddSysTipMsg("CEngDept:UpdateClsDept:无法返回缓冲集!", "")
xBGetCache = False
End If
'首先返回xCmd对应的数据集合
If Not CGlbSharedMethods.GetDataSetBySQL(xDataSet, xStrSQL, "TestDept") Then
CGlbSharedMethods.AddSysErrMsg("CEngDept:UpdateColDept:CallError CGlbSharedMethods.GetDataSetBySQL", "")
GoTo CleanExit
End If
'如果没有纪录,报错退出
If xDataSet.Tables("TestDept").Rows.Count = 0 Then
CGlbSharedMethods.AddSysErrMsg("CEngDept:UpdateColDept:结果集找不到数据,无法更新该对象!", "更新数据错误,请联系管理员!")
GoTo CleanExit
End If
'返回表,并且设置主键
xTable = xDataSet.Tables("TestDept")
xKey(0) = xTable.Columns("DeptName")
xTable.PrimaryKey = xKey

For Each xDept In iColDept

Try
xTable = xDataSet.Tables("TestDept")
If xDept.IsDel Then
xTable.Rows(0).Delete()
'从缓冲集合中移除
If xBGetCache Then
xColDept.Remove(xDept.DeptName)
End If
Else
If xDept.IsNew Or xDept.IsDirty Then
'根据IsNew和IsDirty确定xRow
If xDept.IsNew Then
xRow = xTable.NewRow
xTable.Rows.Add(xRow)
Else
'获得要更改的纪录
xRow = xTable.Rows(0)
End If
'更改纪录
xRow.BeginEdit()
'主键只有在增加的时候才能够被赋值
If xDept.IsNew Then xRow("DeptName") = xDept.DeptName
'增加其余字段信息
xRow("DeptDesc") = xDept.DeptDesc
xRow.EndEdit()

'如果返回缓冲集,加入缓冲集合
If xBGetCache Then
If Not xColDept.Add(xDept) Then
CGlbSharedMethods.AddSysTipMsg("CEngDept:UpdateColDept:无法将Dept对象加入缓冲集!", "")
End If

End If
End If
End If

xDept.IsDel = False
xDept.IsDirty = False
xDept.IsNew = False

Catch ex As Exception
CGlbSharedMethods.AddSysErrMsg("CEngDept:UpdateColDept:" & ex.ToString, "更新数据出现错误,请联系管理员!")
GoTo CleanExit
End Try
Next
'更新数据到数据库中去
If Not CGlbSharedMethods.UpdateDataSet(xDataSet, "TestDept") Then
CGlbSharedMethods.AddSysErrMsg("CEngDept:UpdateColDept:CallError CGlbSharedMethods.UpdateDataSet", "")
GoTo CleanExit
End If

RightExit:
UpdateColDept = True
CleanExit:
xRow = Nothing
xTable = Nothing
xDataSet = Nothing
End Function

End Class

 

业务类和缓冲管理类的代码全部由代码生成器自动产生

分享到:
评论

相关推荐

    VB.net 常用代码示例

    这个压缩包文件包含了一系列VB.NET编程中的常用代码示例,特别关注了数据操作和用户界面交互。以下是对每个文件名称所代表的知识点的详细解释: 1. **04自定义函数ShowData的实现过程.jpg**:这可能是关于如何创建...

    新VB.NET源代码2023-11-18-16-40QZQ.zip

    VB.NET源代码是指使用VB.NET编写的程序或应用程序的原始文本,这些代码可以被编译器转换为可执行的.NET程序。"新VB.NET源代码2023-11-18-16-40QZQ.zip"可能是一个包含最新VB.NET项目的压缩文件,这个项目可能是在...

    VB.NET源代码2010旗舰版.zip

    这个"VB.NET源代码2010旗舰版.zip"压缩包很可能包含了一系列使用VB.NET编写的源代码示例,这些示例可能涵盖了各种编程概念和技术,适合初学者学习和经验丰富的开发者参考。 VB.NET在2010年发布的是Visual Studio ...

    C#代码项目转换VB.NET项目代码(可整个项目转换)

    5. 保存并构建VB.NET项目:在确认代码无误后,保存转换后的VB.NET文件,并创建一个新的VB.NET项目。将转换后的源代码添加到新项目中,然后编译和运行以验证功能是否正常。 需要注意的是,虽然工具能够自动化大部分...

    vb.net中socket示例源代码.rar

    本示例源代码提供了客户端(socket_client)和服务器端(socket_server)的实现,帮助开发者理解如何在VB.NET中使用Socket进行网络通信。 首先,让我们详细探讨一下Socket的基本概念。Socket是网络通信中的一个抽象...

    VSTO开发Excel工具箱源码(VB.NET版).zip

    本资源“VSTO开发Excel工具箱源码(VB.NET版).zip”提供了一个用VB.NET编写的Excel工具箱的完整源代码,包含多种实用功能,如连接SQL Server数据库、处理远程数据、使用异步委托以及绘制甘特图等。 1. **VSTO基础*...

    VB.NET 实例示例大全.rar

    这个"VB.NET实例示例大全.rar"压缩包显然是为VB.NET初学者或开发者提供的一系列实践教程和代码示例,帮助他们更好地理解和应用VB.NET进行软件开发。 在VB.NET中,你可以学习到以下关键知识点: 1. **基本语法**:...

    VB.NET拨号创建示例.rar

    最后,`VB.NET拨号创建示例`可能是项目的主要源代码文件,比如一个`.vb`文件,其中包含了拨号功能的具体实现。在这个文件里,我们可以看到如何实例化和配置`RasDialer`对象,如何设置拨号参数,以及如何处理拨号过程...

    微软最新提供的101个VB.NET代码示例

    【VB.NET代码示例解析】 VB.NET是一种基于.NET框架的编程语言,由微软公司开发,用于构建各种类型的应用程序,包括桌面应用、Web应用和服务。本压缩包包含微软官方提供的101个VB.NET代码示例,涵盖了多个关键领域,...

    VB.NET.rar_.net 教程_VB.net教程_Visual Basic.Net_vb.net_vb.net 实例

    VB.NET运行在.NET Framework之上,后者提供了丰富的类库和服务,如Common Language Runtime(CLR)负责代码的编译和执行,以及各种系统服务如内存管理。 总之,VB.NET结合了.NET框架的强大功能,为开发者提供了高效...

    VB.net程序源码120实例(VS2013)

    VB.NET是一种基于.NET Framework的编程语言,用于构建各种应用程序,包括桌面、Web和移动应用。这个压缩包包含120个VB.NET编程实例,适用于在Visual Studio 2013环境中学习和实践。通过这些实例,你可以深入理解VB...

    VB.NET 源代码学习

    通过这个“VB.NET源代码学习”压缩包,你可以找到各种实际的代码示例,涵盖上述提到的知识点。学习这些代码可以帮助你理解VB.NET的语法、编程模式以及如何将理论知识应用于实践中。此外,通过调试和修改这些代码,你...

    vb.net生成二维码示例

    示例可能包括一个简单的VB.NET项目,其中包含了完整的代码和说明文档,解释如何配置项目、引用库以及如何调用生成二维码的函数。这有助于初学者理解并快速上手。 7. **实际应用**: 生成的二维码可以用于各种场景...

    新VB.NET源代码2023-11-18-23-50QZQ.zip

    本压缩包"新VB.NET源代码2023-11-18-23-50QZQ.zip"包含的是最新的VB.NET编程源代码,可能是某个项目或应用的开发资源。由于标签为空,我们无法得知具体的应用领域,但从文件名推测,这可能是一个更新或改进过的版本...

    微软最新VB.NET源码_示例100个

    每个示例都会专注于一个或多个上述知识点,通过实际代码展示其工作原理和使用场景,对学习和提升VB.NET编程技能非常有帮助。通过逐一实践和理解这些示例,开发者可以深入掌握VB.NET的核心特性和最佳实践。

    VB.NET2010_MODBUS.zip_VB MODBUS_modbus vb_vb modbus_vb.net RS4

    在提供的`VB.NET2010_MODBUS.txt`文件中,可能包含了实现上述步骤的具体代码示例,包括建立串口连接、发送MODBUS请求、接收并解析响应等关键部分。通过阅读和分析这个文件,你可以深入理解如何在VB.NET 2010中实现...

    VB.NET2008速成精简版

    Visual Studio Express支持VB.NET以及其他编程语言,如C#和C++,并且具有代码编辑、调试、项目管理等一系列功能,适合初学者进行学习和实践。 VB.NET语言本身具有直观的语法,它继承了Visual Basic的易读性和易用性...

    VB.net实现打印的简单方法

    以下是一个简单的VB.NET打印代码示例: ```vb.net Imports System.Drawing.Printing Public Class Form1 Private Sub btnPrint_Click(sender As Object, e As EventArgs) Handles btnPrint.Click Dim pd As New ...

    vb.net代码段编辑器

    "vb.net代码段编辑器"就是这样一个工具,专为VB.NET程序员设计,帮助他们更好地管理和利用这些代码片段。 这个编辑器提供了以下功能和知识点: 1. **代码片段管理**:编辑器允许用户创建、编辑、分类和存储代码...

    .net中进度条示例演示,ProgressBar1.PerformStep(),VB.net源代码程序

    下面将详细介绍`.NET中进度条示例演示,ProgressBar1.PerformStep(),VB.net源代码程序`的相关知识点。 首先,`ProgressBar1.PerformStep()`是ProgressBar控件的一个方法,它会增加进度条的值,这个增量是在设计时...

Global site tag (gtag.js) - Google Analytics