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

014集——c#实现打开、另存对话框(CAD—C#二次开发入门)

如下图所示,运行后实现如下功能:

打开对话框,选择一个文件,并获取文件名变量。

打开另存对话框,输入路径和文件名,获取另存文件名变量。

部分代码如下:

 public static void Ofd(this Database db, out OpenFileDialog ofd, out DialogResult ofdr){ofd = new Wform.OpenFileDialog();ofd.InitialDirectory = @"C:\Users\Administrator\Desktop\";ofd.Filter = "文本文件(*.txt) |*.txt| 所有文件(*.*) | *.*";ofdr = ofd.ShowDialog();}public static void Sfd(this Database db, out SaveFileDialog sfd, out DialogResult sfdr){sfd = new Wform.SaveFileDialog();sfd.Title = "保存图形数据";sfd.Filter = "文本文件(*.txt)|*.txt| 所有文件(*.*) | *.*";sfd.InitialDirectory = Path.GetDirectoryName(db.Filename);string fileName = Path.GetFileName(db.Filename);sfd.FileName = fileName.Substring(0, fileName.IndexOf('.'));sfdr = sfd.ShowDialog();//SaveFileDialog savefd;//DialogResult saveDlgRes;//db.Sfd(out savefd, out saveDlgRes);//if (saveDlgRes == Wform.DialogResult.OK)//{//    BlockData[] data = new BlockData[2];//    data[0].layerName = "0的图层名";//    data[1].blockName = "1的块名";//    string[] contents = new string[data.Length];//    for (int i = 0; i < data.Length; i++)//    {//        contents[i] = data[i].blockName + data[i].layerName + ",";//    }//    File.WriteAllLines(savefd.FileName, contents);}

部分字段和方法可进行封装,如定义数据库database db等。

CAD二开插件定制:↓↓↓

相关文章:

014集——c#实现打开、另存对话框(CAD—C#二次开发入门)

如下图所示&#xff0c;运行后实现如下功能&#xff1a; 打开对话框&#xff0c;选择一个文件&#xff0c;并获取文件名变量。 打开另存对话框&#xff0c;输入路径和文件名&#xff0c;获取另存文件名变量。 部分代码如下&#xff1a; public static void Ofd(this Database…...

全面升级:亚马逊测评环境方案的最新趋势与实践

在亚马逊测评领域深耕多年&#xff0c;见证了无数环境方案的更迭与演变&#xff0c;每一次变化都体现了国人不畏艰难、勇于创新的精神。面对平台的政策调整&#xff0c;总能找到相应的对策。那么&#xff0c;当前是否存在一套相对稳定且高效的技术方案呢&#xff1f;答案是肯定…...

Java中的异步编程模型

1.什么是异步编程&#xff1f; 异步编程是一种编程模式&#xff0c;允许程序在等待某些操作&#xff08;例如文件I/O或网络请求&#xff09;完成时&#xff0c;不必停下来等待&#xff0c;而是继续执行其他任务。当异步操作完成时&#xff0c;回调函数或任务调度器会处理结果&…...

opencv 按位操作

opencv位运算说明 按位与&#xff0c;按位或&#xff0c;按位非&#xff0c;按位异或 在 OpenCV 中&#xff0c;按位操作函数的接口一般包括两个或多个图像数组&#xff08;矩阵&#xff09;作为输入&#xff0c;常常还会有一个可选的掩码参数。下面我列出每个函数的具体接口…...

【Bug】STM32串口空闲中断接收不定长数据异常

Bug 使用标准库配置STM32F103C8T6的串口1开启接收中断和空闲中断&#xff0c;通过空闲中断来判断数据发送是否结束&#xff0c;收到数据后切换板载LED灯所接引脚电平&#xff0c;发现LED出现三种情况&#xff0c;熄灭、微亮、正常亮&#xff0c;但是LED灯所接的GPIO引脚为PC13…...

使用Radzen Blazor组件库开发的基于ABP框架炫酷UI主题

一、项目简介 使用过ABP框架的童鞋应该知道它也自带了一款免费的Blazor UI主题&#xff0c;它的页面是长这样的&#xff1a; 个人感觉不太美观&#xff0c;于是网上搜了很多Blazor开源组件库&#xff0c;发现有一款样式非常不错的组件库&#xff0c;名叫&#xff1a;Radzen&am…...

Java入门4——输入输出+实用的函数

在本篇博客&#xff0c;采用代码解释的方法&#xff0c;帮助大家熟悉Java的语法 一、输入和输出 在Java当中&#xff0c;我们一般有这样输入输出&#xff1a; import java.util.Scanner;public class javaSchool {public static void main(String[] args) {Scanner scanner …...

《当尼采哭泣》

这是一个相互救赎的故事。故事铺垫比较冗长&#xff0c;看到一半的时候一度看不下去。直到看到最后两章才最终感觉值得一看。很多表层现象&#xff0c;就像露出水面的冰山。解决表面的问题&#xff0c;需要深挖冰山水下的部分。一个人碰到的最难解决的问题不在外部&#xff0c;…...

TOMCAT Using CATALINA——OPTS,闪退解决方法(两种)

【Java实践】安装tomcat启动startup.bat出现闪退问题_安装tomcat点击startup闪退-CSDN博客...

Android音视频 MediaCodec框架-启动编码(4)

Android音视频 MediaCodec框架-启动编码 简述 上一节我们介绍了MediaCodec框架创建编码器流程&#xff0c;编解码的流程其实基本是一样的&#xff0c;只是底层的最终的实现组件不同&#xff0c;所以我们只看启动编码流程。 MediaCodec启动编码 从MediaCodec的start方法开始…...

# Go 语言中的 Interface 和 Struct

go package mainimport ("fmt" )// Girl 是一个接口&#xff0c;定义了所有"女性"类型都应该实现的方法 type Girl interface {call()introduce() }// Wife 结构体代表妻子 type wife struct {name stringage intyearsWed int }// call 方法…...

SSM与Springboot是什么关系? -----区别与联系

SSM&#xff08;Spring Spring MVC MyBatis&#xff09;和 Spring Boot 都是基于 Spring 框架的技术栈&#xff0c;但它们在使用方式、配置复杂度以及设计理念上有所不同。下面是 SSM 和 Spring Boot 之间的关系及主要区别&#xff1a; SSM (Spring Spring MVC MyBatis) 定…...

MATLAB小波变换图像融合系统

二、应用背景及意义 本课题利用小波变换进行图像的融合&#xff0c;然后对融合的结果进行图像质量的评价。所谓小波变换图像融合就是对多个的信息目标进行一系列的图像提取和合成&#xff0c;进而可以获得对同一个信息目标的更为精确、全面、可靠的高低频图像信息描述。并且也…...

nginx-安装和80端口映射多域名和ssl

一、安装所需插件 1、安装 gcc gcc是linux下的编译器&#xff0c;它可以编译 C,C,Ada,Object C和Java等语言。 yum -y install gcc 2、安装pcre、pcre-devel pcre是一个perl库&#xff0c;包括perl兼容的正则表达式库&#xff0c;nginx的http模块使用pcre来解析 正则表达式。…...

SVN小乌龟 create patch 和 apply patch 功能

在SVN&#xff08;Subversion&#xff09;版本控制系统中&#xff0c;使用“小乌龟”&#xff08;TortoiseSVN&#xff09;这个图形界面工具可以极大地简化SVN操作。TortoiseSVN中的“create patch”和“apply patch”是两个非常有用的功能&#xff0c;它们与版本控制中的补丁&…...

#MySQL `SELECT` 语句执行流程详解

在数据库操作中&#xff0c;MySQL 的 SELECT 语句是用于查询数据最常见的 SQL 语句之一。理解它的执行流程对数据库优化和性能提升具有至关重要的意义。本文将详细解析 SELECT 语句从发出请求到返回结果的每个步骤&#xff0c;并结合 MySQL 的架构为您提供深度理解。 ## 1. 连接…...

docker容器运行一段时间提示Failed to initialize NVML: Unknown Error

情况描述 服务器使用docker启动容器。启动以后一切正常也能跑程序。但是&#xff0c;在运行一段时间&#xff08;2天左右不等&#xff09;&#xff0c;会发现gpu掉了。输入nvidia-smi提示 Failed to initialize NVML: Unknown Error 主要发生条件是&#xff0c;docker启动的…...

PPT自动化:快速更换PPT图片(如何保留原图片样式等参数更换图片)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 PPT更换图片 📒1. 安装 `python-pptx` 模块2. 加载PPT文件3. 查找并替换图片3.1 查找图片形状3.2 获取原图片的样式和位置3.3 替换图片4. 保存修改后的PPT文件5. 设置图片的相关参数5.1 设置透明度5.2 设置边框🚀 保留所有参…...

秒懂MVC, MVP, MVVM框架

框架的目标 关注点分离 (separation of concerns)低耦合 (Loose coupling)容易维护 (Maintainable)容易被测试 (Testable)...

IDEA社区版如何用tomcat运行war包

前言 我们在使用IDEA开发Java应用时&#xff0c;有时候需要运行的不是jar包&#xff0c;而是war包&#xff0c;但IDEA社区版默认是不支持tomcat容器的&#xff0c;无法直接运行war包。不过好在我们有一个强大的插件来支持我们使用tomcat&#xff0c;那么&#xff0c;我们应该如…...

大数据学习栈记——Neo4j的安装与使用

本文介绍图数据库Neofj的安装与使用&#xff0c;操作系统&#xff1a;Ubuntu24.04&#xff0c;Neofj版本&#xff1a;2025.04.0。 Apt安装 Neofj可以进行官网安装&#xff1a;Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...

Docker 运行 Kafka 带 SASL 认证教程

Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明&#xff1a;server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...

Python爬虫实战:研究feedparser库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

leetcodeSQL解题:3564. 季节性销售分析

leetcodeSQL解题&#xff1a;3564. 季节性销售分析 题目&#xff1a; 表&#xff1a;sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...

C#学习第29天:表达式树(Expression Trees)

目录 什么是表达式树&#xff1f; 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持&#xff1a; 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...

免费数学几何作图web平台

光锐软件免费数学工具&#xff0c;maths,数学制图&#xff0c;数学作图&#xff0c;几何作图&#xff0c;几何&#xff0c;AR开发,AR教育,增强现实,软件公司,XR,MR,VR,虚拟仿真,虚拟现实,混合现实,教育科技产品,职业模拟培训,高保真VR场景,结构互动课件,元宇宙http://xaglare.c…...

Python 实现 Web 静态服务器(HTTP 协议)

目录 一、在本地启动 HTTP 服务器1. Windows 下安装 node.js1&#xff09;下载安装包2&#xff09;配置环境变量3&#xff09;安装镜像4&#xff09;node.js 的常用命令 2. 安装 http-server 服务3. 使用 http-server 开启服务1&#xff09;使用 http-server2&#xff09;详解 …...

DBLP数据库是什么?

DBLP&#xff08;Digital Bibliography & Library Project&#xff09;Computer Science Bibliography是全球著名的计算机科学出版物的开放书目数据库。DBLP所收录的期刊和会议论文质量较高&#xff0c;数据库文献更新速度很快&#xff0c;很好地反映了国际计算机科学学术研…...

Neko虚拟浏览器远程协作方案:Docker+内网穿透技术部署实践

前言&#xff1a;本文将向开发者介绍一款创新性协作工具——Neko虚拟浏览器。在数字化协作场景中&#xff0c;跨地域的团队常需面对实时共享屏幕、协同编辑文档等需求。通过本指南&#xff0c;你将掌握在Ubuntu系统中使用容器化技术部署该工具的具体方案&#xff0c;并结合内网…...

java高级——高阶函数、如何定义一个函数式接口类似stream流的filter

java高级——高阶函数、stream流 前情提要文章介绍一、函数伊始1.1 合格的函数1.2 有形的函数2. 函数对象2.1 函数对象——行为参数化2.2 函数对象——延迟执行 二、 函数编程语法1. 函数对象表现形式1.1 Lambda表达式1.2 方法引用&#xff08;Math::max&#xff09; 2 函数接口…...