C# CAD交互界面-自定义面板集(四)

运行环境 vs2022 c# cad2016 调试成功

一、引用

cs 复制代码
using Autodesk.AutoCAD.Runtime;
using Autodesk.AutoCAD.Windows;
using System.Windows.Forms;

二、程序说明

创建自定义面板集(PaletteSet)的C#命令方法实现。该方法名为CreatePalette,当在AutoCAD环境中调用此命令时,会执行以下操作:

  1. 获取AutoCAD主应用对象:虽然在这个片段中没有显示具体获取方式,但在实际应用中,通常会通过 Autodesk.AutoCAD.ApplicationServices.Application 类来访问AutoCAD的主应用上下文。

  2. 初始化一个面板集对象:

    • 创建一个名为 "我的窗体" 的 PaletteSet 实例。
    • 设置最小尺寸为 300x300 像素。
  3. 创建用户自定义控件:

    • 新建一个 UserControl 对象实例,这里只是声明了一个通用控件,但实际应用中可能需要填充具体的UI元素和功能。
  4. 将控件添加到面板集中:

    • 分别将同一个控件实例添加到面板集下的两个标签页"My Tab01" 和 "My Tab02"。
  5. 显示面板集:

    • 设置 Visible 属性为 true 来显示整个面板集。
  6. 设置面板样式和透明度:

    • 设置面板样式为 PaletteSetStyles.ShowTabForSingle,这意味着即使面板集中只有一个标签页也会显示标签本身。
    • 设置面板集的不透明度为 90%,这样可以使得面板有一定的透明效果。

总结起来,这个方法会在AutoCAD界面中创建并显示一个包含两个标签页的自定义面板集,并且每个标签页都包含相同的用户自定义控件,同时设置了面板的外观样式和透明度属性。

三、完成代码

cs 复制代码
 [CommandMethod("CreatePalette")]
 public void CreatePalette()
 {
     // 获取 AutoCAD 主应用对象


     // 初始化面板集对象
     PaletteSet ps = new PaletteSet("我的窗体");
     ps.MinimumSize = new System.Drawing.Size(300, 300);

     // 创建用户自定义的窗体或控件
     UserControl ctrl = new UserControl();

     // 添加控件到面板集中
     ps.Add("My Tab01", ctrl);
     ps.Add("My Tab02", ctrl);

     // 显示面板
     ps.Visible = true;

     // 设置面板样式和透明度
     ps.Style = PaletteSetStyles.ShowTabForSingle;
     ps.Opacity = 90;
 }

//感谢大家的点赞,收藏,转发,关注

相关推荐
yamsfeer3 小时前
电商自动化支付全链路技术拆解:从Playwright到扫码支付的底层原理
前端
DongWook3 小时前
WangEditor渲染标签自定义属性的探索
前端
沙漠3 小时前
React Native-SyncFormatEdittext:用 JSI 实现零闪烁的实时文本格式化
前端·react native
超人气王3 小时前
JavaScript新手基础入门——this指针指向,一文带你搞清楚
前端·javascript
z落落3 小时前
C# 数组属性和方法(Clear / Copy / IndexOf / LastIndexOf)
开发语言·javascript·c#
码上有光3 小时前
c++模板进阶知识讲解(对模板的进一步的运用与理解)
java·前端·c++·特化·模板进阶·偏特化
嘟嘟07173 小时前
Python切片技巧×DeepSeek API:手把手教你打造智能商品文案生成器
前端·javascript
环境工程笔记3 小时前
给 Agent 浏览器任务加一个 Verification Gate:遇到验证页时该如何优雅暂停
前端
一步一个脚印一个坑3 小时前
页面性能监控中”资源加载”指标的深度解析:为什么静态资源加载时间和页面资源加载时间对不上?
前端
是你的小橘呀3 小时前
模型总说瞎话?RAG 技术帮你用私域数据精准 “校准” 大模型
前端