真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

VB.NET中回調(diào)函數(shù)如何使用

VB.NET中回調(diào)函數(shù)如何使用,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供神農(nóng)架林區(qū)網(wǎng)站建設(shè)、神農(nóng)架林區(qū)做網(wǎng)站、神農(nóng)架林區(qū)網(wǎng)站設(shè)計、神農(nóng)架林區(qū)網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、神農(nóng)架林區(qū)企業(yè)網(wǎng)站模板建站服務(wù),十多年神農(nóng)架林區(qū)做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。

VB.NET經(jīng)過長時間的發(fā)展,很多用戶都很了解VB.NET回調(diào)函數(shù)了,這里我發(fā)表一下個人理解,和大家討論討論。創(chuàng)建數(shù)據(jù)庫事件處理函數(shù)(VB.NET回調(diào)函數(shù))

無論什么時候一個對象被打開并要被修改時,數(shù)據(jù)庫事件處理函數(shù)會被調(diào)用。當然,如果這時我們監(jiān)視的命令不是活動的,我們就應(yīng)該跳過任何被這個VB.NET回調(diào)函數(shù)調(diào)用的內(nèi)容。

If bEditCommand = False Then
Return
End If

同樣地,如果我們監(jiān)視的命令已經(jīng)結(jié)束,而ObjectOpenedForModify事件被另一個VB.NET回調(diào)函數(shù)再次觸發(fā)的話,而這時有對象被修改時,我們要阻止所有由這個VB.NET回調(diào)函數(shù)執(zhí)行的動作。

If bDoRepositioning = True Then
Return
End If

這個VB.NET回調(diào)函數(shù)剩余部分的代碼用來驗證我們是否正在處理EMPLOYEE塊索引。如果是的話,我們就獲取它的ObjectID和位置(三維點)。下面的代碼可以被粘貼到這個事件處理函數(shù)函數(shù)。

Public Sub objOpenedForMod(ByVal o As Object, ByVal e As ObjectEventArgs)  If bEditCommand = False Then  Return  End If  If bDoRepositioning = True Then  Return  End If  Dim objId As ObjectId  objId = e.DBObject.ObjectId  Dim trans As Transaction  Dim bt As BlockTable  Dim db As Database  db = HostApplicationServices.WorkingDatabase  trans = db.TransactionManager.StartTransaction()  Try  'Use it to open the current object!  Dim ent As Entity = trans.GetObject(objId, OpenMode.ForRead, False)  If TypeOf ent Is BlockReference Then 'We use .NET's RTTI to establish type.  Dim br As BlockReference = CType(ent, BlockReference)  'Test whether it is an employee block  'open its extension dictionary  If br.ExtensionDictionary().IsValid Then  Dim brExtDict As DBDictionary = trans.GetObject(br.ExtensionDictionary(), OpenMode.ForRead)  If brExtDict.GetAt("EmployeeData").IsValid Then  'successfully got "EmployeeData" so br is employee block ref  'Store the objectID and the position  changedObjects.Add(objId)  employeePositions.Add(br.Position)  'Get the attribute references,if any  Dim atts As AttributeCollection  atts = br.AttributeCollection  If atts.Count > 0 Then  Dim attId As ObjectId  For Each attId In atts  Dim att As AttributeReference  att = trans.GetObject(attId, OpenMode.ForRead, False)  changedObjects.Add(attId)  employeePositions.Add(att.Position)  Next  End If  End If  End If  End If  trans.Commit()  Finally  trans.Dispose()  End Try  End Sub

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。


本文標題:VB.NET中回調(diào)函數(shù)如何使用
標題URL:http://weahome.cn/article/ipdscc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部