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;
 }

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

相关推荐
时寒的笔记3 小时前
11期_js逆向核心案例解析(sichuan&某理财网)
开发语言·javascript·ecmascript
2601_958492553 小时前
7 WordPress Tools I Trust for Building a High-Traffic Magazine Site
前端·word
IT_陈寒3 小时前
Java的finally块竟然不是你想的那个finally!
前端·人工智能·后端
2501_940041743 小时前
挖掘前端交互潜力的五款创意游戏原型
前端·游戏
C+-C资深大佬3 小时前
变量作用域(通俗 + 清晰讲解,适合编程入门)
前端·javascript·vue.js
weelinking3 小时前
【claude】15_Claude使用经验与最佳实践
前端·人工智能·python·sql·数据挖掘·前端框架·github
一念春风3 小时前
.md文件浏览器
c#·wpf
XS0301063 小时前
HTML 入门教程
前端·html
刻BITTER3 小时前
Alpine.js + Chart.js 踩坑记:一次 Maximum Call Stack Exceeded 排查之旅
开发语言·javascript·ecmascript