VB.net進行CAD二次開發(四)

netload不能彈出對話框,參考文獻2

參考文獻1說明了自定義菜單的問題,用的是cad的系統命令

只要加載了dll,自定義的命令與cad的命令同等地位。

這時,可以將自定義菜單的系統命令替換為自定義命令。

? ? ? ? <CommandMethod("AddMenu")>
? ? ? ? Public Sub AddMenu()
? ? ? ? ? ? Dim currentPath1 As String = System.Environment.CurrentDirectory
? ? ? ? ? ? Dim currentPath As String = "D:\testVBNet\ODPM"
? ? ? ? ? ? Dim cs As CustomizationSection = activeDoc.AddCui(cuiFile, menuGroupName)

? ? ? ? ? ? cs.AddMacro("面板", "^C^C_CreatePalette1 ", "ID_MyPalette", "創建面板: ? CreatePalette1", currentPath & "\Image\Line.BMP")
? ? ? ? ? ? cs.AddMacro("多段線", "^C^C_Pline ", "ID_MyPLine", "創建二維多段線: ?PLINE", currentPath & "\Image\Polyline.BMP")
? ? ? ? ? ? cs.AddMacro("矩形", "^C^C_Rectang ", "ID_MyRectang", "創建矩形多段線: ?RECTANG", currentPath & "\Image\Rectangle.BMP")
? ? ? ? ? ? cs.AddMacro("圓", "^C^C_circle ", "ID_MyCircle", "用指定半徑創建圓: ? CIRCLE", currentPath & "\Image\Circle.BMP")
? ? ? ? ? ? cs.AddMacro("復制", "^C^CCopy ", "ID_MyCopy", "復制對象: ? COPY", currentPath & "\Image\Copy.BMP")
? ? ? ? ? ? cs.AddMacro("刪除", "^C^CErase ", "ID_MyErase", "從圖形刪除對象: ? ERASE", currentPath & "\Image\Erase.BMP")
? ? ? ? ? ? cs.AddMacro("移動", "^C^CMove ", "ID_MyMove", "將對象在指定方向上平移指定的距離: ?MOVE", currentPath & "\Image\Move.BMP")
? ? ? ? ? ? cs.AddMacro("旋轉", "^C^CRotate ", "ID_MyRotate", "繞基點旋轉對象: ?ROTATE", currentPath & "\Image\Rotate.BMP")
? ? ? ? ? ? Dim sc As StringCollection = New StringCollection()
? ? ? ? ? ? sc.Add("MyPop1")
? ? ? ? ? ? Dim myMenu As PopMenu = cs.MenuGroup.AddPopMenu("我的菜單", sc, "ID_MyMenu")

? ? ? ? ? ? If myMenu IsNot Nothing Then
? ? ? ? ? ? ? ? myMenu.AddMenuItem(-1, "面板", "ID_MyPalette")
? ? ? ? ? ? ? ? myMenu.AddMenuItem(-1, "多段線", "ID_MyPLine")
? ? ? ? ? ? ? ? myMenu.AddMenuItem(-1, "矩形", "ID_MyRectang")
? ? ? ? ? ? ? ? myMenu.AddMenuItem(-1, "圓", "ID_MyCircle")
? ? ? ? ? ? ? ? myMenu.AddSeparator(-1)
? ? ? ? ? ? ? ? Dim menuModify As PopMenu = myMenu.AddSubMenu(-1, "修改", "ID_MyModify")
? ? ? ? ? ? ? ? menuModify.AddMenuItem(-1, "復制", "ID_MyCopy")
? ? ? ? ? ? ? ? menuModify.AddMenuItem(-1, "刪除", "ID_MyErase")
? ? ? ? ? ? ? ? menuModify.AddMenuItem(-1, "移動", "ID_MyMove")
? ? ? ? ? ? ? ? menuModify.AddMenuItem(-1, "旋轉", "ID_MyRotate")
? ? ? ? ? ? End If

? ? ? ? ? ? cs.LoadCui()
? ? ? ? End Sub

如果發現菜單一直沒有更新,額可以將自定義的cuix文件刪除,重新加載

自動加載dll的方法見參考文獻7

至此VB.net開發CAD所有關節全部打通。

正式進入實際編程階段。

相對于VBA,VB.net更為靈活,做出的東西更像一個產品。

參考文獻

vbnet 實現AutoCAD自定義菜單和工具欄_vb,net 開發cad 添加菜單欄下拉子菜單-CSDN博客

AutoCAD輸入netload命令后不彈出菜單而是一直顯示程序集文件名解決方案-CSDN博客

https://www.cnblogs.com/loveclumsybaby/archive/2012/08/21/2649050.html

AutoCAD中.Net實現打開程序自動加載菜單欄的方法_cad二開自動加載按鈕-CSDN博客

https://www.cnblogs.com/bomb12138/p/3607929.html

https://www.cnblogs.com/bomb12138/p/3600842.html

cad二次開發——自動運行dll,加載菜單(收集)_cad開啟自動加載dll-CSDN博客

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/20594.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/20594.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/20594.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

STL-queue的使用及其模擬實現

在C標準庫中&#xff0c;隊列(queue)是一種容器適配器&#xff0c;它以先進先出的方式組織數據&#xff0c;其中從容器一端插入元素&#xff0c;另一端取出元素。 queue的使用 queue的構造函數 queue的成員函數 empty&#xff1a;檢測隊列是否為空size&#xff1a;返回隊列中有…

代碼隨想錄算法訓練營 day23| ● 669. 修剪二叉搜索樹 ● 108.將有序數組轉換為二叉搜索樹 ● 538.把二叉搜索樹轉換為累加樹

文章目錄 前言669. 修剪二叉搜索樹思路方法一 遞歸法方法二 迭代法 108.將有序數組轉換為二叉搜索樹思路方法一 遞歸法方法二 迭代法 538.把二叉搜索樹轉換為累加樹思路方法一方法二 總結 前言 迭代法都沒看主要是669和538【538很簡單】 669. 修剪二叉搜索樹 思路 不用看教程…

【C++刷題】優選算法——位運算

常見位運算操作總結&#xff1a; 基礎位運算 &&#xff1a;有0則為0 |&#xff1a;有1則為1 ^&#xff1a;相同為0&#xff0c;相異為1 / 無進位相加運算符的優先級 管它什么優先級&#xff0c;加括號就完事兒了給一個數 n&#xff0c;確定它的二進制表示中的第 i (默認是從…

【基本數據結構】平衡二叉樹

文章目錄 前言平衡二叉樹1 簡介2 旋轉2.1 左旋2.2 右旋2.3 何時旋轉 3 插入節點4 刪除節點5 代碼 參考資料寫在最后 前言 本系列專注更新基本數據結構&#xff0c;現有以下文章&#xff1a; 【算法與數據結構】數組. 【算法與數據結構】鏈表. 【算法與數據結構】哈希表. 【…

【斯坦福因果推斷課程全集】1_隨機對照試驗1

目錄 The average treatment effect Difference-in-means estimation IID Sampling and Population Asymptotics Example: The linear model Regression adjustments with a linear model 隨機對照試驗&#xff08;RCT&#xff09;是統計因果推論的基礎。如果有的話&#…

關于FPGA 使用SPI FLASH固化時如何配置固化參數

關于FPGA 使用SPI FLASH固化時如何配置固化參數 EDA工具&#xff1a;Vivado 關于FPGA 使用SPI FLASH固化時如何配置固化參數一、引言二、如何設置固化參數&#xff1a;使用50M的速度 &#xff0c;SPI為X4 &#xff0c;以及bit壓縮第一&#xff1a;點open implenment design第二…

Android之onMeasure的三種模式

Overrideprotected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {super.onMeasure(widthMeasureSpec, heightMeasureSpec);}在 Android 中&#xff0c;onMeasure() 方法是 View 或 ViewGroup 中的一個重要方法&#xff0c;用于測量視圖的大小。在 onMeasure(…

安裝軟件缺少dll文件怎么辦,分享多種解決dll問題的方法

在計算機使用過程中&#xff0c;我們經常會遇到安裝軟件時提示缺少dll文件的問題。這種情況通常會導致軟件無法正常運行或啟動。為了解決這個問題&#xff0c;我總結了以下五種方法&#xff0c;希望對大家有所幫助。 一&#xff0c;了解DLL文件是什么 動態鏈接庫&#xff08;D…

簡單說說我對集成學習算法的一點理解

概要 集成學習&#xff08;Ensemble Learning&#xff09;是一種機器學習技術框架&#xff0c;它通過構建并結合多個學習器&#xff08;也稱為個體學習器或基學習器&#xff09;來完成學習任務。 集成學習旨在通過組合多個基學習器的預測結果來提高整體模型的性能。每個基學習…

常見儀表盤指示燈的含義,這次夠全了!

汽車是當前主要的交通工具之一&#xff0c;給人們的工作、生活提供了便利。大家在學會開車的同時&#xff0c;也得了解一些基本的汽車常識&#xff0c;可以及時的發現車輛的問題&#xff0c;并作出正確的判斷&#xff0c;以此降低車輛的損耗和維修成本。其中最基本的&#xff0…

房產證上加名?手把手教你操作,省錢又省心!

隨著《民法典》的實施&#xff0c;房產的權屬問題愈發受到重視。夫妻雙方及其親屬常希望能在房產證上增添自己的名字&#xff0c;以保障各自的權益。那么&#xff0c;房產證上到底能寫幾個名字呢&#xff1f;以下是對這一問題的詳細解答。 一、房產證命名無固定限制 在購房時&…

準確-K8s系列文章-修改containerd 默認數據目錄

修改 Kubernetes 集群中 containerd 默認數據目錄為 /data/containerd 前言 本文檔適用于 Kubernetes 1.24 及以上版本的集群,介紹如何將 containerd 默認的數據目錄從 /var/lib/containerd 修改為 /data/containerd。 步驟 1. 停止 containerd 服務(慎重!!!需評估風險!…

iOS中的UIScene和UISceneDelegate

目錄 ???????前言 一、AppDelegate和SceneDelegate的關系 1.AppDelegate 2.SceneDelegate 3.info.plist配置 4.生命周期方法對比 1.應用啟動 2.進入前臺 3.進入后臺 5.何時使用AppDelegate和SceneDelegate 1.AppDelegate 2.SceneDelegate 前言 在iOS 13及之…

Linux內核編程入門:深度探索與實戰挑戰

Linux內核編程入門&#xff1a;深度探索與實戰挑戰 在操作系統的心臟地帶&#xff0c;Linux內核以其強大、靈活和開源的特性吸引著眾多程序員。對于那些渴望深入了解系統底層機制并親手塑造操作系統的勇士們&#xff0c;Linux內核編程無疑是一個極具挑戰性和吸引力的領域。本文…

民國漫畫雜志《時代漫畫》第39期.PDF

時代漫畫39.PDF: https://url03.ctfile.com/f/1779803-1248636473-6bd732?p9586 (訪問密碼: 9586) 《時代漫畫》的雜志在1934年誕生了&#xff0c;截止1937年6月戰爭來臨被迫停刊共發行了39期。 ps: 資源來源網絡!

Qt for Android : 使用libusb做CH340x串口傳輸的底層USB庫

簡介 Qt for Android自帶的串口方案并沒有適用在高的API版本中&#xff0c; 會出現permission denied的訪問問題&#xff0c; 所以就需要使用Android API&#xff0c; 也就是在CPP中使用JNI方式進行調用&#xff0c; 為了開發的方便&#xff0c; 使用libusb庫作為替代的底層usb…

SpringBoot注解--10--@Bean,對象注入的三種方法

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 文章目錄 Bean一、如何使用方法注解注意Bean 的命名規則&#xff0c;當沒有設置 name 屬性時&#xff0c;那么 bean 默認的名稱就是方法名&#xff0c;當設置了 name 屬性之后…

解析Java中1000個常用類:Runnable 類,你學會了嗎?

在 Java 編程中,處理并發和多線程是一個重要的主題。為了簡化多線程編程,Java 提供了多種工具和類,其中最基本的一個工具就是 Runnable 接口。 Runnable 接口為創建和管理線程提供了一種標準的方式。本文將詳細介紹 Runnable 接口的定義、實現原理、應用場景,并通過示例展…

33【Aseprite 作圖】樹——拆解

1 樹葉 畫樹葉真累啊&#xff0c;可以先畫一個輪廓&#xff0c;細節一點點修 2 1 2 &#xff1b;2 2 2 &#xff08;橫著橫&#xff09;&#xff0c;這樣一點點畫樹葉 填充顏色&#xff0c;用了噴霧工具 2 樹干部分 輪廓部分&#xff0c;左邊的是3 3 3 &#xff1b;上下都是…

網頁音頻提取在線工具有哪些 網頁音頻提取在線工具下載

別再到處去借會員賬號啦。教你一招&#xff0c;無視版權和地區限制&#xff0c;直接下載網頁中的音頻文件。沒有復雜的操作步驟&#xff0c;也不用學習任何代碼。只要是網頁中播放的音頻文件&#xff0c;都可以把它下載到本地保存。 一、網頁音頻提取在線工具有哪些 市面上的…