当前位置: 首页 > news >正文

网站都不需要什么备案河南整站关键词排名优化软件

网站都不需要什么备案,河南整站关键词排名优化软件,网站做哪家最专业广州,苏州网站建设的一般流程这篇文章是教大家怎样子创建自己的Ribbon按钮界面#xff08;如下图#xff09;#xff0c;以下示例代码在CAD2020中运行实现。 背景 创建一个属于自己的Ribbon按钮#xff08;如下图#xff09; 理解Ribbon、Panel、Tab的关系#xff08;如下图#xff09;#xff… 这篇文章是教大家怎样子创建自己的Ribbon按钮界面如下图以下示例代码在CAD2020中运行实现。 背景 创建一个属于自己的Ribbon按钮如下图 理解Ribbon、Panel、Tab的关系如下图一个Tab包含多个Panel一个Panel包含多个RibbonButton 代码 using Autodesk.AutoCAD.Runtime; using Autodesk.Windows; using System; using System.Collections.Generic; using System.Drawing; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Interop; using System.Windows.Media.Imaging;[assembly:CommandClass(typeof(CADBlogDemo.Ribbon))] namespace CADBlogDemo {public class Ribbon{[CommandMethod(RibbonCmd)]public void RibbonCmd(){//得到所有的Ribbon选项卡列表集合RibbonControl ribbonCtrl ComponentManager.Ribbon;if (ribbonCtrl null) return;//加个判断如果有了这个选项卡就不重复添加if (ribbonCtrl.Tabs.FirstOrDefault(x x.Title MyRibbon) ! null) return;//添加选项卡RibbonTab tab AddTab(ribbonCtrl, MyRibbon, RibbonId1, true);//添加面板RibbonPanelSource panel AddPanel(tab, 我就是我);//添加按钮RibbonButton button CreateRibbonButton(panel, 点我\n点我, Demo\n, ${Path.GetDirectoryName(typeof(Ribbon).Assembly.Location)}\Images\123.png);}/// summary/// 添加Ribbon选项卡/// /summary/// param nameribbonCtrlRibbon控制器/param/// param nametitle选项卡标题/param/// param nameid选项卡ID/param/// param nameisActive是否置为当前/param/// returnsRibbonTab/returnspublic RibbonTab AddTab( RibbonControl ribbonCtrl, string title, string id, bool isActive){RibbonTab tab new RibbonTab();tab.Title title;tab.Id id;ribbonCtrl.Tabs.Add(tab);tab.IsActive isActive;return tab;}/// summary/// 添加面板/// /summary/// param nametabRibbon选项卡/param/// param nametitle面板标题/param/// returnsRibbonPanelSource/returnspublic RibbonPanelSource AddPanel(RibbonTab tab, string title){RibbonPanelSource panelSource new RibbonPanelSource();panelSource.Title title;RibbonPanel ribbonPanel new RibbonPanel();ribbonPanel.Source panelSource;tab.Panels.Add(ribbonPanel);return panelSource;}/// summary/// 创建按钮/// /summary/// param namepanel面板/param/// param namename按钮显示名字/param/// param namecmd需要绑定的命令/param/// param namephotoPath图片路径/param/// returns/returnspublic RibbonButton CreateRibbonButton(RibbonPanelSource panel, string name, string cmd, string photoPath){RibbonButton button new RibbonButton();button.Text name;button.ShowText true;Bitmap bitmap new Bitmap(photoPath);BitmapSource bitmapSource Imaging.CreateBitmapSourceFromHBitmap(bitmap.GetHbitmap(), IntPtr.Zero, System.Windows.Int32Rect.Empty, BitmapSizeOptions.FromEmptyOptions());button.Image bitmapSource; //按钮图片button.LargeImage bitmapSource; //按钮大图片button.Size RibbonItemSize.Large;button.Orientation System.Windows.Controls.Orientation.Vertical;button.CommandHandler new RibbonCommandHandler();button.CommandParameter cmd;panel.Items.Add(button);return button;}}public class RibbonCommandHandler : System.Windows.Input.ICommand{public bool CanExecute(object parameter){return true;}public event EventHandler CanExecuteChanged;public void Execute(object parameter){//is from Ribbon ButtonRibbonButton ribBtn parameter as RibbonButton;if (ribBtn ! null){//execute the command Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.SendStringToExecute((string)ribBtn.CommandParameter, true, false, true);}}} } 讲解 先得到所有的Tab列表集合判断是否已经存在自己的选项卡了 //得到所有的Ribbon选项卡列表集合RibbonControl ribbonCtrl ComponentManager.Ribbon;if (ribbonCtrl null) return;新建选项卡Tab /// summary/// 添加Ribbon选项卡/// /summary/// param nameribbonCtrlRibbon控制器/param/// param nametitle选项卡标题/param/// param nameid选项卡ID/param/// param nameisActive是否置为当前/param/// returnsRibbonTab/returnspublic RibbonTab AddTab( RibbonControl ribbonCtrl, string title, string id, bool isActive){RibbonTab tab new RibbonTab();tab.Title title;tab.Id id;ribbonCtrl.Tabs.Add(tab);tab.IsActive isActive;return tab;}新建面板panel /// summary/// 添加面板/// /summary/// param nametabRibbon选项卡/param/// param nametitle面板标题/param/// returnsRibbonPanelSource/returnspublic RibbonPanelSource AddPanel(RibbonTab tab, string title){RibbonPanelSource panelSource new RibbonPanelSource();panelSource.Title title;RibbonPanel ribbonPanel new RibbonPanel();ribbonPanel.Source panelSource;tab.Panels.Add(ribbonPanel);return panelSource;}新建按钮Ribbon /// summary/// 创建按钮/// /summary/// param namepanel面板/param/// param namename按钮显示名字/param/// param namecmd需要绑定的命令/param/// param namephotoPath图片路径/param/// returns/returnspublic RibbonButton CreateRibbonButton(RibbonPanelSource panel, string name, string cmd, string photoPath){RibbonButton button new RibbonButton();button.Text name;button.ShowText true;Bitmap bitmap new Bitmap(photoPath);BitmapSource bitmapSource Imaging.CreateBitmapSourceFromHBitmap(bitmap.GetHbitmap(), IntPtr.Zero, System.Windows.Int32Rect.Empty, BitmapSizeOptions.FromEmptyOptions());button.Image bitmapSource; //按钮图片button.LargeImage bitmapSource; //按钮大图片button.Size RibbonItemSize.Large;button.Orientation System.Windows.Controls.Orientation.Vertical;button.CommandHandler new RibbonCommandHandler();button.CommandParameter cmd;panel.Items.Add(button);return button;}RibbonCommandHandler类 继承于ICommand类作用是控制按钮是否可用 public class RibbonCommandHandler : System.Windows.Input.ICommand{public bool CanExecute(object parameter){return true;}public event EventHandler CanExecuteChanged;public void Execute(object parameter){//is from Ribbon ButtonRibbonButton ribBtn parameter as RibbonButton;if (ribBtn ! null){//execute the command Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.SendStringToExecute((string)ribBtn.CommandParameter, true, false, true);}}}最后在CAD中用Netload添加编译的Dll运行“RibbonCmd”命令就可以看到选项卡了 最后 创建按钮的时候传入的是相对地址复制代码使用的时候可以先换成绝对地址实现效果后再换相对地址。赶紧去实现第一个按钮吧
http://www.w-s-a.com/news/838189/

相关文章:

  • 网站建设与管理网络推广的优点
  • 美食网站的设计与制作做网站的电销话术
  • 中国档案网站建设现状研究陕西建设厅执业资格注册中心网站
  • 网站建设的内容管理怎么用ps切片在dw里做网站
  • 建设婚恋网站用什么搭建涿州网站开发
  • 做知识内容的网站与app哈尔滨哪里有做网站的
  • 青岛企业网站建站模板百度网站建设推广
  • 做360网站中保存的图片存在哪里个人建立网站要多少钱
  • 网站安装部署无锡做网站的公司
  • 怎么将网站做成小程序安装wordpress到服务器
  • 企业网站建设的四大因素沈阳网站建设招标公司
  • wordpress仿站开发公司网站策划宣传
  • 金乡县网站开发网站开发三个流程
  • qq空间网站是多少纺织网站建设方案
  • 建设微网站项目报告网站优化难吗
  • 做网站需要自己上传产品吗企业网站系统设计
  • wordpress个人中心济南网站建设和优化
  • 网站pc端网址和手机端网址建设牡丹江 网站建设
  • 苏州新区城乡建设网站人才招聘网站开发
  • 一般网站是怎么做的威远移动网站建设
  • 赣州网站开发公司怎么才能设计好一个网站
  • 个人网站建设分几个步走培训网站开发哪个好
  • 智能网站价格河北城乡建设网站
  • 做动画在线观看网站网上花店 网站源代码
  • 做网站项目体会商业信息
  • 深圳的设计网站谷歌浏览器下载手机版官网
  • 苏州网站建设都找全网天下外贸响应式网站设计
  • 揭阳专业做网站网站迁移教材
  • 手机上怎么上传网站吗工程信息网站建设
  • 用手机建网站微信手机网站流程