登录
  • 欢迎访问Sharezer Blog

【小工具】Excel导出工具

功能 读取Excel文档(2003或2007) 在表格中列出数据 编辑、输入、删除数据 导出成json、xml、csv格式 界面 过程 新建工程 Visual Studio中新建一个Windows窗体,基于C#。 选择文件 一种方法是点击按钮触发事件 private void BtnSelect_Click(object sender, EventArg……继续阅读 »

【小工具】查询开关机时间

原理 调用Window的事件(EventLog),通过开机与关机的事件ID,得到开关机记录。 界面 源码 const long ON_ID = 2147489653; //开机 const long OFF_ID = 2147489654; //关机 private void BtnSearch_Click(object sender, EventArgs e) { mainListBox.Items.Clear(); EventLog eventLog = new EventLog(); eventLog.Log = "Sy……继续阅读 »

【小工具】批量使用TinyPNG压缩图片

一个项目开发到后期,总会遇到资源过多,打出来的包太大这些问题。 TinyPNG是一个很好的在线图片压缩工具,一般的JPG或PNG图片都能压缩到原来大小的四分之一左右。 不过,TinyPNG网站只支持一张一张的传输,还好他有提供API。 本工具就是调用TinyPNG的API,批量把图片传输到TinyPNG,再把压缩完的图片批量下载回来。 耗时有点略长,没办法,访问国外的网站就是这样。 ……继续阅读 »

【小工具】剪裁图片(九宫格制作工具)

九宫格图片 如上图所示正常情况下九宫格绘制会遵循下面的规则: a. 保持4个角部分不变形 b. 单向拉伸4条边(即在4个角两两之间的边,比如上边,只做横向拉伸) c. 双向拉伸中间部分(即九宫格的中间部分,横向,纵向同时拉伸,PS:拉伸比例不一定相同) 那问题来了,如果我们手上有一张图片(上图 九宫格效果),怎么把它剪裁成九宫格原图,甚至是比原图还小的图片。 由上面的原则,理论上只要保证四个角不变形就弄,边界可以尽可能的切小(PS:前提图片内没有花纹或渐变色等图案)。 用PS是……继续阅读 »

【小工具】批量拷贝文件到某文件夹及子文件夹下

前言 在项目开发过程中,有时候会建一些文件夹,用来定义文件的结构。 建完文件夹并不一定就会马上放入文件。 比法说我经常会在文件夹Resources放一下Datas目录,用来存放策划提供的数据。 当文件夹Datas还没放入东西的时候,我就无法把目录上传到Git上。 这样策划也就看不到这个目录。 现在的主流做法是在空文件夹里放置一个.gitignore文件在里面比较实用,也不会觉得突兀。 这样一个一个文件夹拷贝太麻烦了,因此写了这个小工具。 界面 操作方式,选择文件,……继续阅读 »

AssetDatabase.AddObjectToAsset的问题

有两个类NodeGraph和StateNode,继承于ScriptableObject 现在将一个NodeGraph实例保存到Assets中 AssetDatabase.CreateAsset(curGraph, "Assets/Database/" + wantedName + ".asset"); AssetDatabase.SaveAssets(); AssetDatabase.Refresh(); 然后再生成一些StateNode的实例,插到这个NodeGraph的实例中 curNode.name……继续阅读 »

Unity 可以进行排序的列表ReorderableList

正在序列化一下List的默认样式如下: public class TestScript : MonoBehaviour { public List<string> TestList = new List<string>(); void Start () { } void Update () { } } 手动控制大小,不方便排序与删除 UnityEditorInternal有ReorderableList这个类,可以用于列表的排序 新建一个自定义扩展脚本 ……继续阅读 »

【C#笔记】默认访问修饰符

1、访问修饰符 public : 同一程序集的其他任何代码或引用该程序集的其他程序集都可以访问该类型或成员。 internal : 同一程序集中的任何代码都可以访问该类型或成员,但其他程序集不可以访问。 private : 同一类和结构的代码可以访问该类型和成员。 protected : 同一类和派生(继承特性)类中的代码可以访问该类型和成员。 protected internal :  同一程序集中的任何代码或其他程序集中的任何派生类都可以访问该类型或成员。 2、默认修饰符 ……继续阅读 »