- 博客(27)
- 收藏
- 关注
原创 基于vs开发的程序打包方法---超详细
log($"原始大小: {FormatSize(originalSize)},压缩后: {FormatSize(newSize)}");log($"✗ 处理文件出错 {Path.GetFileName(file)}: {ex.Message}");Log($" - {dir.FullName} (创建时间: {dir.CreationTime})");Log($" - {dir.FullName} (创建时间: {dir.CreationTime})");// JPEG 压缩质量 1-100。
2026-04-23 19:51:27
453
原创 4、winform页面布局
开发者也可以通过重写控件的 OnLayout 方法来实现自定义的布局逻辑,但这需要更多的编程技巧和对 WinForms 绘制周期的理解。
2026-04-23 09:14:00
504
原创 2、winform基础控件
显示消息向用户获取操作信息合理使用消息提示框,因为每次弹出都需要用户去做处理,弹出的频率和次数过高,用户也是会感觉很反感的。现在大多数的提示后可以在界面上直接提示,比如:登录注册时,直接在文本框的后面显示红色的小字提示。
2026-04-22 17:29:59
542
原创 16、c#反射
正常使用类:守株待兔:类提供啥 使用者才能是用啥反射使用类:杀鸡取卵:主动获取类中的所有成员反射是.NET框架提供的一个功能强大的机制,它允许程序在运行时检查和操作对象的类型信息。通过使用反射,程序可以动态地创建对象、调用方法、访问字段和属性,无需在编译时显式知道类型信息。在.NET中,所有类型的信息最终都是存储在元数据中的。反射就是.NET提供的一组API,允许我们在运行时访问这些元数据,从而获得关于程序集、模块、类型、成员等的详细信息。C# 反射的核心是命名空间和类。Type。
2026-04-21 09:08:10
550
原创 14、c# IO流
/写一个方法:遍历参数字符串表示的文件/文件夹::如果是文件夹 就把其中的所有文件都遍历//通过名字判断if (!throw new FileNotFoundException("文件不存在!:::"+name);Console.WriteLine("文件:::"+name);return;//是文件夹if (!throw new FileNotFoundException("文件夹不存在!Console.WriteLine("文件夹<<<<<<<<" + name);
2026-04-20 15:05:31
700
原创 12、c#委托+lambda表达式
/*委托的使用 可以当成一种数据类型一样 只是赋值必须是格式和其一样的方法委托类型可以当 成员变量+局部变量+方法参数列表作用:可以让方法作为变量、参数 进行传递*/internal class Demo12_delegate和lambda表达式//成员变量是委托类型//创建子类对象 :调用对象的heeh方法zi.hehe(1);//使用委托赋值:::指定委托的实例::一个方法::方法要求 返回值类型一样 参数列表一样//局部变量是委托t(1);。
2026-04-18 13:15:31
491
原创 11、c#集合collections
Ilist接口: 动态数组:有序(下标) 可重复ISet接口:: 无序(元素没有下标) 不能重复HashSet:唯一性:HashSet<T> 不允许重复元素,添加重复元素会被自动忽略。无序性:元素没有固定顺序,遍历时可能与插入顺序不同。高效操作:添加、删除、查找元素的性能接近 O (1)。Dictionary:泛型集合 字典 双列集合特点:操作的基本单位是 键值对键唯一 不能为null值可以重复 可以为null。
2026-04-18 13:15:16
596
原创 10、c#方法参数+正则表达式
/*01:::方法的参数传递定义时 参数列表时形参::定义的变量调用时 传递的数据是实参:::运行方法需要的原始数据*/int aa = 1;test11(aa);//把main中的变量aa的值 复制一份 给我了test1中的变量a//方法就是代码块:使用代码块替代方法//int a=aa;a++;//值传递::基本数据类型作为参数 传递的是值 把实参的值复制一份给了形参 在方法中只能更改形参的值//更改为代码块::int[] a=arr;
2026-04-17 08:45:13
662
原创 9、c#异常
/*自定义异常:类库中的异常 无法满足我们的具体需求 自己定义异常类c#开发时 自定义异常是一定有的注意:异常类都要继承System.Exception不同之处:类名+异常原因(通过构造方法参数列表传递)感觉出来:自定义异常异常简单:不需要加特有成员*/internal class Demo09_exception自定义异常trygetAge(-1);Console.WriteLine("处理异常:"+e);
2026-04-17 08:45:00
501
原创 8、c#基础类库02
internal class Demo04_补充//枚举学习:");//要求参数是方向/*枚举枚举(enum)是一种用户定义的类型,用于表示一组命名的常量值。它通过为一组数值赋予友好的名称,提高代码的可读性。用于描述一类数据时:如果数据有固定的一组值时 建议使用枚举比如:方向:性别 角色 季节 星期注意:每个枚举值 对应一个整数---称为索引 索引从0开始*/HAHAH,UP=4,//设置索引为4DOWN,LEFT,RIGHT。
2026-04-16 19:12:20
481
原创 8、c#基础类库01
/*System.Object::::简写object语法:多而无关:::多用 不要理解面向对象:封装 继承 多态:::多联系现实+内存图基础类库:类的使用场景:经典练习题:掌握常用类和类中成员object: 上帝类:一个类没有继承其他类 默认继承objectobject是所有类的直接或者间接父类只要是对象 都拥有此类的方法*///object类的常用方法//方法01:string ToString();
2026-04-16 19:12:07
455
原创 7、c#面向对象05
多态的还用场景1: 在定义方法参数列表时 定义为父类类型 这样就可以传递任意子类类型的对象* 多态的使用场景2: 在定义类的成员变量时 定义为父类类型 这样就可以赋值任意子类类型的对象* 多态的使用场景3: 在定义数组元素类型时 定义为父类类型 这样就可以装任意子类类型的对象* 多态的使用场景4: 在定义方法返回值类型时 定义为父类类型 这样就可以返回任意子类类型的对象。
2026-04-15 11:24:05
568
原创 7、c#面向对象03
internal class demo08_作业//成员变量---字段Worker w1 = new Worker("韩梅梅",19,10000);w1.addr = new Address("河南.郑州.二七区","400001");w1.Work();w1.show();c3.show();c3.show();c3.show();//1. (面向对象基础)写一个Worker 类,并创建多个Worker 对象。
2026-04-14 11:23:29
502
原创 7、c#面向对象02
internal class demo05_作业//2 根据类创建对象//3 给对象的变量赋值t1.name = "韩梅梅";t1.sex = '女';t1.subject = "英语";//4 调用对象的方法t1.show(1);t1.smoke("红塔山");//1 定义类 描述一类事物//1.1 定义变量描述数据::解决问题有意义的数据//1.2 定义方法描述功能。
2026-04-14 11:23:15
485
原创 7、c#面向对象01
分析泽连斯基自我介绍 不是把真人拉到电脑中进行介绍而是虚拟一个与现实泽连斯基数据完全一致的模型 让模型进行自我介绍模型对于电脑说就是复杂数据电脑使用数据 必须先声明数据的类型(声明了类型 才能分配存储空间)思考:泽连斯基的类型--人类型(不是基本数据类型 是引用数据类型 需要创建)步骤分析倒推泽连斯基自我介绍---创建泽连斯基模型---声明模型的类型:人类型---创建人类数据类型正确步骤创建人类类型--创建人类类型的对象--模型是泽连斯基(不是别人)--模型进行自我介绍。
2026-04-13 13:34:57
682
原创 6、c#方法
//0 文档//1 * 数学黑洞6174//已知:一个任意的四位正整数。将数字重新组合成一个最大的数和最小的数//相减,重复这个过程,最多七步,必得6174。即:7641 - 1467 = 6174。将永远出不//来。//求证:所有四位数数字(全相同的除外),均能得到6174。输出掉进黑洞的//步数。//2 数组排序i++) {//打印数组i++) {//排序i++) {j++) {arr1[j]= k;。
2026-04-13 13:34:31
464
原创 5、c#数组
//定义数组名int[] arr;//创建数组对象::方式1::指定元素的类型和个数 元素有默认值//创建数组对象::方式2::指定元素的具体值int[] arr2;//方式2的简略写法::注意此方式 不能拆开写//定义一个数组名arr4 让其指向一个新创建的数组对象//arr4指向一个新的数组对象 第24行的对象没有名字了 成为了垃圾//让数组名arr5指向arr4指向的对象:::给26行的对象 又起个名字 两个名字ar4和arr5。
2026-04-11 08:36:40
496
原创 YoloV8深度学习部署与训练教程---超详细
1.打开data.yaml,更改三个路径,这里使用相对路径代码中的nc:1 指的是标签数量,简单讲就是瑕疵数量2.train.py文件图片箭头部分代码:选择训练使用的模型,在这个训练文件中包含了yolov8和yolov11,我们选择yolov8这里设置图片的训练参数:尺寸等训练结束后生成的.pt文件路径也在这段代码中3.训练完成之后,生成.pt文件,路径在train.py中代码中的name中,已上述。。
2026-04-11 08:36:07
939
原创 4、c#流程控制
/作业1:输入一个数 判断是不是水仙花数Console.WriteLine("请输入一个三位数:");//判断是不是三位数//获取此数的各个位数的值//获取各个位数的三次方之和::::想获取什么 就 定义变量记录他//判断是不是等于n1Console.WriteLine("n1=" + n1 + ",是三位数 也是水仙花数!");} else {Console.WriteLine("n1=" + n1 + ",是三位数 但不是水仙花数!");} else {
2026-04-10 08:43:36
473
原创 3、c#语法
这份笔记主要复习了C#标识符、数据类型与运算规则,详细讲解了算术、比较、赋值、逻辑、三元等运算符用法,以及自动隐式和强制显式类型转换;最后介绍了流程控制,包括if-else选择结构、循环结构与跳转语句,并结合年龄、分数、季节、闰年、水仙花数等案例演示了实际使用。
2026-04-10 08:42:19
469
原创 2、c#语法概念
本文系统梳理C#基础语法核心要点:先明确计算机语言分类与程序本质,再讲解关键字、标识符的规则与命名规范;重点介绍值类型与引用类型、常量变量定义使用,以及字符串拼接方式;最后说明数据运算类型提升规则和char与ASCII编码关系,整体覆盖C#入门必备语法知识。
2026-04-09 09:38:03
472
原创 1、c#基础
本文整理 C# 基础入门知识,涵盖语言特点、.NET 平台、VS 安装使用及控制台编程。C# 是微软面向对象的现代编程语言,依托 .NET 框架,多用于桌面、Web 与游戏开发。.NET Framework 仅限 Windows,.NET Core 支持跨平台。Visual Studio 安装只需勾选 Web 开发和 .NET 桌面开发组件,可创建控制台、WinForm 项目。解决方案管理多个项目,bin/obj 为编译目录,Main 为程序入口。文中附带 VS 常用快捷键、项目启动设置,以及 Con
2026-04-09 08:55:50
779
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅