亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于AutoCAD-VBA的批量文字替換方法探討

        2017-03-10 20:06:55
        關(guān)鍵詞:二次開發(fā)按鈕程序

        鄭 賓

        (陜西鐵路工程職業(yè)技術(shù)學(xué)院 電氣工程系, 陜西 渭南 714099)

        基于AutoCAD-VBA的批量文字替換方法探討

        鄭 賓

        (陜西鐵路工程職業(yè)技術(shù)學(xué)院 電氣工程系, 陜西 渭南 714099)

        通過VBA對(duì)AutoCAD的二次開發(fā),設(shè)計(jì)了一個(gè)可以選擇多個(gè)圖形文件,并同時(shí)進(jìn)行批量文字查找和替換的應(yīng)用程序。比較之前通過命令行對(duì)話框的操作,解決了一次只能選擇一個(gè)圖形文件的問題,提高了工作效率,實(shí)際應(yīng)用效果良好。

        AutoCAD; VBA; 文字替換; 批量

        AutoCAD是一款用于二維、三維繪圖、設(shè)計(jì)文檔的計(jì)算機(jī)輔助設(shè)計(jì)軟件。AutoCAD繪圖功能強(qiáng)大,但在數(shù)據(jù)處理、文檔操作等方面有局限性[1]82。Visual Basic for Applications是Visual Basic的一種宏語言[2]564,可以通過VBA編程操作CAD的繪圖對(duì)象[3]45-46,通過對(duì)AutoCAD的二次開發(fā),避免繪圖過程中的重復(fù)性工作,簡(jiǎn)化流程,使CAD準(zhǔn)確、快速的優(yōu)勢(shì)得到最大的發(fā)揮。

        在AutoCAD中,對(duì)文字查找和替換是通過打開文件標(biāo)準(zhǔn)對(duì)話框?qū)崿F(xiàn)的,但每次只能選擇一個(gè)文件,操作很不便捷。本文設(shè)計(jì)的程序仍然使用打開文件標(biāo)準(zhǔn)對(duì)話框這一功能,但是卻允許同時(shí)選擇多個(gè)文件,能夠同時(shí)對(duì)多個(gè)圖形進(jìn)行文字查找和替換的操作,這在工程設(shè)計(jì)的過程中是一個(gè)非常實(shí)用的工具。

        一、實(shí)例設(shè)計(jì)

        本文通過AutoCAD-VBA設(shè)計(jì)一個(gè)批量文字替換的應(yīng)用程序。

        (1)運(yùn)行AutoCAD2016,在【VBA管理器】中創(chuàng)建一個(gè)全局工程并選擇保存路徑,進(jìn)行保存。

        (2)選擇【插入/用戶窗體】菜單項(xiàng),在程序中創(chuàng)建一個(gè)窗體frmMain,并添加以下控件:一個(gè)列表框控件用于顯示選擇的圖形文件名稱,兩個(gè)文本框控件用來輸入查找和替換的文字,四個(gè)命令按鈕分別是添加、刪除、取消、確定。

        (3)在窗體的初始化事件中,清空列表框的元素,其實(shí)現(xiàn)代碼為:

        Private Sub UserForm_Initialize ()

        IstFile.Clear

        End Sub

        (4)窗體中【添加】按鈕的單擊事件,用于顯示標(biāo)準(zhǔn)對(duì)話框,獲取用戶的選擇,并將選擇的結(jié)果添加到列表框中,其實(shí)現(xiàn)代碼為[4]53-55:

        Private Sub cmdOpen_Click()

        On Error GoTo errHandle

        Dim a As Integer

        Dim b As Integer

        Dim c As Integer

        Dim DocuName () As String

        With comDlg

        .CancelError= True

        .MaxFileSize=32767

        .DialogTitle=“請(qǐng)選擇文件!”

        .Filter=“文件(*.dwg)| dwgI*.dwg|所有文件(*.*)|*.*”

        .FileName=“”

        .ShowOpen

        End With

        (5)窗體中【刪除】按鈕的單擊事件,用于從列表框中刪除指定的元素,其實(shí)現(xiàn)代碼為:

        Private Sub cmdDelete_Click ()

        If lstFile . ListCount >= 1 Then

        If lstFile .List工ndex = -1 Then

        MsgBox“請(qǐng)選擇列表中的圖形名稱!”

        Exit Sub

        End If

        lstFile.RemoveItem(lstFile.ListIndex)

        End If

        End Sub

        (6)窗體中【確定】按鈕的單擊事件,用于打開每一個(gè)列表框中顯示的圖形文件,并且對(duì)文件進(jìn)行文字替換的操作,其實(shí)現(xiàn)代碼為:

        Private Sub cmdOk__Click()

        dim adT As AcadText

        dim adMT As AcadMText

        dim acdc As AcadSelectionSet

        dim fType As Integer

        If txtFind.Text=“” Or txtReplace.Text=“” Then

        MsgBox“輸入所要替換的字符串內(nèi)容!”

        Exit Sub

        End If

        If 1stFile.ListCount=0 Then

        MsgBox“請(qǐng)?zhí)砑铀僮鞯膱D形”

        Exit Sub

        End If

        For I = 0 To file.ListCount

        Application. Documents. Open File. list(i)

        On Error Resume Next

        Set adSS=This Drawing.SelectionSets .Add ( “acdc” )

        If error Then

        Set acdc=ThisDrawing. SelectionSets .Add ( “acdc” )

        acdc.Clear

        fType (0) =0: fData (0)=“TEXT”: fType (1)=8: fData (1)=“*”

        acdc.Select acSelectionSetAll, , , fType,fData

        For Each adT In acdc

        With adT

        If InStr( .TextString,strFind)Then .TextString=

        ReplaceStr ( .TextString, strFind, strReplace, False)

        End With

        Next adT

        For Each adMT In acdc

        With adMT

        If InStr( .TextString,strFind)Then .TextString=

        ReplaceStr ( .TextString, strFind, strReplace, False)

        End With

        Next adMT

        二、實(shí)例效果

        (1)在VBA集成開發(fā)環(huán)境中,按下F5鍵運(yùn)行程序,系統(tǒng)會(huì)彈出【批量文字替換】對(duì)話框。

        (2)單擊【添加】按鈕,系統(tǒng)會(huì)彈出【選擇圖形文件】對(duì)話框。用戶可以從中選擇多個(gè)圖形文件,單擊【打開】按鈕就可以將文件添加到【批量文字替換】對(duì)話框的文件列表中。

        (3)在【批量文字替換】對(duì)話框中輸入要替換的字符串和替換內(nèi)容,單擊【確定】按鈕,就可以對(duì)指定的多個(gè)圖形進(jìn)行文字替換的操作。

        相比于傳統(tǒng)的CAD環(huán)境下,通過選擇【編輯】下拉菜單下【查找】命令,會(huì)出現(xiàn)查找和替換對(duì)話框,查找位置選項(xiàng)下有“整個(gè)圖形”“當(dāng)前空間布局”“選定對(duì)象”,但只能對(duì)一個(gè)圖形文件進(jìn)行查找和替換的操作,相比較而言,批量替換程序具有明顯的優(yōu)勢(shì)。

        三、總結(jié)與提高

        通過這個(gè)程序的設(shè)計(jì),實(shí)現(xiàn)了在CAD中批量文字替換的功能,在實(shí)際使用過程中,程序運(yùn)行穩(wěn)定,提高了工作效率,效果良好。對(duì)話框的使用可以通過調(diào)用Windows標(biāo)準(zhǔn)瀏覽文件夾對(duì)話框的方法[5]35,也可以使用標(biāo)準(zhǔn)打開對(duì)話框?qū)崿F(xiàn)多個(gè)選擇,實(shí)際上,還可以自行編寫打開文件對(duì)話框的程序。但是,這個(gè)批量文字替換程序也有一些不足之處,如:對(duì)多個(gè)圖形中的特定對(duì)象不能具體進(jìn)行設(shè)置和選擇,同時(shí),對(duì)不同行業(yè)中有特定需求和實(shí)際問題的用戶,針對(duì)性不是很強(qiáng)。在今后,可以通過一些程序軟件的嵌入和二次開發(fā),來解決本行業(yè)個(gè)性化的實(shí)際問題。

        [1] 郭慶龍.AutoCAD VBA在鐵路信號(hào)工程設(shè)計(jì)中的應(yīng)用[J].硅谷,2015(3).

        [2] 張 勇.基于AutoCAD的二次開發(fā)技術(shù)的研究與實(shí)現(xiàn)[J].佳木斯大學(xué)學(xué)報(bào),2016(4).

        [3] 彭小紅.CAD中實(shí)現(xiàn)工程圖樣自動(dòng)化轉(zhuǎn)換的研究[J].CAD/CAM與制造業(yè)信息化,2009(11).

        [4] 盧彬源,何征坤.AutoCAD VBA在地形圖批處理中的應(yīng)用[J].北京測(cè)繪,2014(3).

        [5] 呂延崗.Excel VBA在成績(jī)管理中的應(yīng)用[J].辦公自動(dòng)化,2014(4).

        Study of Batch Replacement of Text Based on AutoCAD-VBA

        ZHENG Bin

        (Department of Electrical Engineering, Shanxi Railway Institute, Weinan 714000, China)

        Visual basic for applications is an integrated development environment in AutoCAD application, also is an object-oriented visual structure programming language, which is widely used in various fields of practical work. Using VBA application to the Secondary Development of Auto-CAD, designing the application of batch text replacement and comparing with the previous command-line dialog box operation, proves that this application works more efficiency.

        Autodesk Computer Aided Design; Visual Basic for Application; replacement of text; batch

        2016-10-27

        鄭 賓(1978-),男,陜西渭南人,講師,主要從事電子信息技術(shù)研究。

        TP391.72

        A

        1672-2388(2017)01-0089-03

        猜你喜歡
        二次開發(fā)按鈕程序
        哪個(gè)是門鈴真正的按鈕
        當(dāng)你面前有個(gè)按鈕
        淺談基于Revit平臺(tái)的二次開發(fā)
        甘肅科技(2020年20期)2020-04-13 00:30:02
        淺談Mastercam后處理器的二次開發(fā)
        模具制造(2019年3期)2019-06-06 02:11:02
        試論我國未決羈押程序的立法完善
        西門子Easy Screen對(duì)倒棱機(jī)床界面二次開發(fā)
        “程序猿”的生活什么樣
        英國與歐盟正式啟動(dòng)“離婚”程序程序
        創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
        內(nèi)心不能碰的按鈕
        国色天香社区视频在线| 日本中文字幕一区二区高清在线| 国产真实二区一区在线亚洲| 亚洲精品岛国av一区二区| 永久亚洲成a人片777777| 久无码久无码av无码| 日韩精品成人无码AV片| 综合久久加勒比天然素人| 日本精品一区二区高清| 蜜桃无码一区二区三区| 欧美精品中文字幕亚洲专区| 国产人妖在线免费观看| 国产一区二区三区不卡在线观看| 一本久久a久久精品vr综合| 国产98在线 | 免费| 亚洲乱色视频在线观看| 日本最新视频一区二区| 少妇人妻精品一区二区三区| 中文无码成人免费视频在线观看| 中文字幕一二区中文字幕| 国产av在线观看一区二区三区| 男人进去女人爽免费视频| 亚洲成av人综合在线观看| 中文成人无字幕乱码精品区| 日韩一区二区超清视频| 清纯唯美亚洲经典中文字幕| 国产精品麻豆va在线播放| 国产在线精品一区二区三区不卡 | 亚州无线国产2021| 亚洲天堂av在线一区| 精品视频一区二区三区日本| 天天摸夜夜摸夜夜狠狠摸| 97se亚洲国产综合自在线图片| 永久免费中文字幕av| 成人国产一区二区三区 | 国产人成视频免费在线观看| 激情文学婷婷六月开心久久| 中文字幕日韩欧美一区二区三区| 国产mv在线天堂mv免费观看| 资源在线观看视频一区二区| 久久久亚洲熟妇熟女av|