日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
全面分析VB.NETMOVE命令

本章的目的是解釋AutoCAD事件怎樣才能被用于控制AutoCAD圖形中的行為。我們不想讓用戶能改變EMPLOYEE塊索引的位置,而對(duì)于其它的非EMPLOYEE塊索引的位置則沒(méi)有這個(gè)限制。我們將混合使用數(shù)據(jù)庫(kù)與文檔事件來(lái)做到這一點(diǎn)。

創(chuàng)新互聯(lián)公司長(zhǎng)期為成百上千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為措勤企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作,措勤網(wǎng)站改版等技術(shù)服務(wù)。擁有十載豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

#t#首先,我們想要監(jiān)視將要被執(zhí)行的AutoCAD命令(使用CommandWillStart事件)。特別地,我們要監(jiān)視VB.NET MOVE命令。另外,當(dāng)一個(gè)對(duì)象要被修改時(shí),我們應(yīng)該被通知(使用ObjectOpenedForModify事件),這樣我們可以確定它是否為一個(gè)EMPLOYEE塊索引。如果這時(shí)就修改對(duì)象可能是無(wú)效的,因?yàn)槲覀兊男薷目赡軙?huì)再次觸發(fā)事件,從而引起不穩(wěn)定的行為。所以,我們要等待VB.NET MOVE命令的執(zhí)行結(jié)束(使用CommandEnded事件),這時(shí)就可以安全地修改對(duì)象了。當(dāng)然,任何對(duì)塊索引的修改將會(huì)觸發(fā)ObjectOpenedForModify事件。我們還需要設(shè)置一些全局變量來(lái)表明一個(gè)VB.NET MOVE命令在運(yùn)行和被修改的對(duì)象是一個(gè)EMPLOYEE塊索引。

注意:因?yàn)楸菊滦枰容^多的代碼來(lái)獲得想要的結(jié)果,所以我們不會(huì)解釋任何與事件處理無(wú)關(guān)的代碼,而只是將它們粘貼到事件處理函數(shù)中。這里的重點(diǎn)是成功創(chuàng)建和注冊(cè)事件處理函數(shù)。

創(chuàng)建新工程

我們以第六章的工程開(kāi)始。請(qǐng)新加入一個(gè)類AsdkClass2。我們還要加入四個(gè)全局變量。前兩個(gè)是Boolean型的:一個(gè)用來(lái)表示我們監(jiān)視的命令是否是活動(dòng)的,另外一個(gè)用來(lái)表示ObjectOpenedForModify事件處理函數(shù)是否該被忽略。

 
 
 
  1. '全局變量
  2. Dim bEditCommand As Boolean
  3. Dim bDoRepositioning As Boolean

接下來(lái),我們要聲明一個(gè)全局變量來(lái)表示一個(gè)ObjectIdCollection,它用來(lái)存儲(chǔ)我們所選擇的要修改的對(duì)象的ObjectID。

 
 
 
  1. Dim changedObjects As New ObjectIdCollection()

最后,我們要聲明一個(gè)全局變量來(lái)表示一個(gè)Point3dCollection,它用來(lái)包含我們所選對(duì)象的位置(三維點(diǎn))。

 
 
 
  1. Dim employeePositions As New Point3dCollection()

創(chuàng)建第一個(gè)文檔事件處理函數(shù)(回調(diào)函數(shù))

現(xiàn)在我們要?jiǎng)?chuàng)建一個(gè)事件處理函數(shù)。當(dāng)AutoCAD命令開(kāi)始執(zhí)行的時(shí)候它會(huì)通知我們。我們要檢查GlobalCommandName的值是否為MOVE。

 
 
 
  1. If e.GlobalCommandName = "MOVE" Then
  2. 'Set the global variables
  3. 'Delete all stored information
  4. End If

如果VB.NET MOVE命令開(kāi)始執(zhí)行的話,我們要相應(yīng)地設(shè)置Boolean變量bEditCommand的值,這樣我們可以知道我們所監(jiān)視的命令是活動(dòng)的。同樣地,我們應(yīng)該把另外一個(gè)Boolean變量bDoRepositioning設(shè)置為false來(lái)忽略O(shè)bjectOpenedForModify事件處理函數(shù)。兩個(gè)變量設(shè)置好以后,在命令活動(dòng)期間,我們必須要獲得所選塊索引的信息。

我們還應(yīng)該把兩個(gè)集合對(duì)象的內(nèi)容清空。我們只關(guān)心當(dāng)前選擇的對(duì)象。


當(dāng)前文章:全面分析VB.NETMOVE命令
路徑分享:http://m.5511xx.com/article/cdcgods.html