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

郑州本地做团购的网站wordpress获取自定义文章分类名

郑州本地做团购的网站,wordpress获取自定义文章分类名,做门图网站,wordpress模板电子书下载站C# 使用 TreeView 实践 WinRiver II 的测量管理功能 一、WinRiver II 的测量管理界面二、C# 实现 TreeView 的测量管理界面三、C# 2017 .Net FrameWork 框架代码实现3.1、图像中图标拆分的代码实现3.1.1 准备包含图标的 PNG 图片3.1.2 在 C# 2017 .Net FrameWork 框架项目中&am…

C# 使用 TreeView 实践 WinRiver II 的测量管理功能

  • 一、WinRiver II 的测量管理界面
  • 二、C# 实现 TreeView 的测量管理界面
  • 三、C# 2017 .Net FrameWork 框架代码实现
    • 3.1、图像中图标拆分的代码实现
      • 3.1.1 准备包含图标的 PNG 图片
      • 3.1.2 在 C# 2017 .Net FrameWork 框架项目中,添加该图片资源。
      • 3.1.3 在项目代码中使用 imageList 载入图标集合
    • 3.2、C# 实现 TreeView 的测量管理的代码

一、WinRiver II 的测量管理界面

WinRiver II 是ADCP 测量软件,其测量管理界面实际是 TreeView 控件的应用。
在这里插入图片描述

二、C# 实现 TreeView 的测量管理界面

1、TreeView 图标载入
2、只点击复选框图标,改变复选框选择,点击文字部分不改变复选框选择。
在这里插入图片描述

三、C# 2017 .Net FrameWork 框架代码实现

3.1、图像中图标拆分的代码实现

3.1.1 准备包含图标的 PNG 图片

如下 PNG 图片,每个图标大小为 16*16。
在这里插入图片描述

3.1.2 在 C# 2017 .Net FrameWork 框架项目中,添加该图片资源。

在这里插入图片描述

3.1.3 在项目代码中使用 imageList 载入图标集合

引用声明

            using System;using System.Drawing;using System.Windows.Forms;

图片拆分为图标,并加载到 imageList

            Image sourceImage = Properties.Resources.PicturesGroup;//从资源中获取图像ImageList imageList = new ImageList();//新建图像集合列表for (int i = 0; i <= 272; i += 16){Bitmap targetImage = new Bitmap(16, 16);//目标图像using (Graphics g = Graphics.FromImage(targetImage))// 使用Graphics对象绘制原始图片的一部分到目标Bitmap上{g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;// 设置高质量插值法g.DrawImage(sourceImage, new Rectangle(0, 0, 16, 16), new Rectangle(i, 0, 16, 16), GraphicsUnit.Pixel);// 绘制图片的一部分到目标Bitmap上,指定源和目标区域的坐标和尺寸}imageList.Images.Add(targetImage);//将拆分的图像加载到图像集合列表}

3.2、C# 实现 TreeView 的测量管理的代码

            treeView1.FullRowSelect = false; // 确保不选中整行treeView1.StateImageList = imageList;//将图像集合列表赋与treeViewTreeNode Root1 = new TreeNode("项目文件");Root1.StateImageIndex = 1;//图片列表中第2个图标treeView1.Nodes.Add(Root1);TreeNode Root2 = new TreeNode("项目测站信息");Root2.StateImageIndex = 5;//图片列表中第6个图标treeView1.Nodes.Add(Root2);TreeNode Root3 = new TreeNode("项目测量");Root3.StateImageIndex = 5;treeView1.Nodes.Add(Root3);// 然后,向根节点添加子节点TreeNode childNode1 = new TreeNode("测次 000");childNode1.StateImageIndex = 2;//图片列表中第3个图标,未选中childNode1.Checked = false;Root3.Nodes.Add(childNode1);TreeNode childNode2 = new TreeNode("测次 001");childNode2.StateImageIndex = 2;//图片列表中第3个图标,未选中childNode2.Checked = false;Root3.Nodes.Add(childNode2);treeView1.ExpandAll();//自动展开所有节点

节点点击事件

        private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e){TreeNode node = e.Node;//当前鼠标的单击节点if (node != null && e.Button == MouseButtons.Left){Point checkBoxPosition = new Point(e.Node.Bounds.Left - 16, e.Node.Bounds.Top + (e.Node.Bounds.Height - 16) / 2); // 估算复选框位置if (e.X >= checkBoxPosition.X && e.X <= checkBoxPosition.X + 16 && e.Y >= checkBoxPosition.Y && e.Y <= checkBoxPosition.Y + 16){string NodeText = node.Text.Substring(0, 2);if (NodeText == "测次"){if (node.Checked){node.Checked = false;node.StateImageIndex = 2;//图片列表中第3个图标,未选中}else{node.Checked = true;node.StateImageIndex = 3;//图片列表中第4个图标,已选中}}Console.WriteLine(node.Checked);}}}

为什么不采用 treeView1.CheckBoxes = true ,使用 treeView 复选框,因为采用此功能,所有的节点都有复选框,这是不需要的。

http://www.dtcms.com/a/579255.html

相关文章:

  • 自己做的网站别人怎么上网找到合作在惠州做网站
  • 中国建设银行网站密码是什么做淘宝电商比较厉害的网站
  • RFID 技术赋能汽车零件装配线:智能化升级的关键引擎
  • 1、prometheus基础理论
  • 设计社交网站手机可以建网站吗
  • 响应式网站要多久手机站点cn
  • 网站鼠标悬停动态效果古田路9号设计网站
  • 突破 GEO 优化瓶颈:孟庆涛引领的 AI 时代营销新范式
  • 网站模版编辑器企业简介范文
  • 基于Vue的智慧楼宇报修平台设计与实现066z15wb(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • php网站开发套模板步骤张家界城乡建设网站
  • 一元云购网站建设教程wordpress侧边栏插件
  • 惠州城市建设建筑网站cms网站开发网站模板
  • 18年手机网站加强机关网站内容建设
  • 村镇建设年度报表登录网站百度搜索引擎官网
  • 中石化两学一做网站机票网站开发
  • ESP32堆栈空间优化全攻略
  • 学做衣服网站知乎深圳有几家燃气公司
  • 厦门市建设工程质量安全协会网站小程序和公众号的区别和优势
  • 青岛网站设计微动力全国招商代理平台
  • 【RL】学习路径指导-VRP求解方向
  • 大连专业模板网站制作高端网站定制开发
  • 网站seo诊断书郑州网站制作汉狮网络
  • 网站建设广州白云wordpress 缓存目录
  • 建设微网站网站建设总结体会
  • 做响应式网站应该注意什么做网站销售怎么样
  • 建设网站策划书有名的网站建设
  • C++编程基础(六):函数
  • 珠海网站设计价格wordpress 手动下一页
  • 线性代数——矩阵、向量详解