个人的记事本
一、动因
我们在日常工作学习中,需要培养和养成自己的知识管理的习惯,遇到的解决的问题都需要记录下来,有些时候,我们需要快速启动一个窗口进行记录,而如果是需要拷贝图片,设置文本格式等,则可能需要打开word,这个东西,个人是非常讨厌使用,特别是各种排版,自动对齐等。而且启动速度超慢。鉴于此,我写了这个简单的记事本。其实就是一个简单的richedit的应用。但是,比较方便的地方有几点,第一,可以设置你的默认的笔记的路径。如果你安装了金山快盘,dropbox等。把路径设置到这些虚拟盘,会自动上传(其实我想申请麦库的开发者权限,通过麦库的接口直接上传笔记,但是一直还没有回复。哈哈)。第二,增加右键菜单,可以将一个文件直接发送到我的笔记目录下面。第三,可以代替word,具备基本编辑功能。但是启动很快。没有多余的看见就烦的东西。
二、基本功能
程序包括一个richtextbox的控件,一个配置文件,一个注册表文件,注册表文件用于右键菜单的关联,配置文件配置笔记文件夹的位置
只有基本的格式设置的功能,全部以按钮在最上方,有行号显示,具备几个常用的右键菜单
实现基本的ctrl+s,ctrl+o等快捷键,打开,关闭,保存文档。会自动保存到默认文件夹下面。如果你需要保存到另外的位置,请选择另存为
我们阅读笔记的时候喜欢加粗或者加红进行特别关注,因此设置了快捷方式(ctrl+b,ctrl+d)
特别加上了一个截图的功能,最后的一个按钮,我们经常需要截图说明问题。那么按最后一个按钮后,和qq截图一样。直接会被拷贝到笔记中
增加了右键菜单,如下图,可以直接将你遇到的一些文本发送到笔记文件夹中。
三、开发中的一些注意点或经验
1、注意,当我们从右键菜单获取资源管理器给我们传送的参数的时候,要注意,如果这是一个文件路径,那么必须要注意处理这个路径中有
空格的情况,我们不能想当然的以为arg[0]就获取了全部的文件名,因为,如果有空格,每一个隔断都被放到一个arg中,应该循环并且合并
string fileName = string.Empty;
foreach (string commond in commands)
{
fileName += commond;
fileName += " ";
}
2、如果你写一个控件,而你要整个窗口进行隐藏,比如这里的截图,截图开始要隐藏这个窗口,那么不能直接用this.hide().这样会把控件给隐藏了,
而是需要发一个事件,而主窗口订阅这个事件,主窗口进行隐藏
public delegate void d_hideWindow();
public event d_hideWindow hide;
四、下载
bin:https://files.cnblogs.com/xiongwjw/wyw_note_bin.zip
src:https://files.cnblogs.com/xiongwjw/wyw_note_src.zip
浙公网安备 33010602011771号