个人的记事本

一、动因

  我们在日常工作学习中,需要培养和养成自己的知识管理的习惯,遇到的解决的问题都需要记录下来,有些时候,我们需要快速启动一个窗口进行记录,而如果是需要拷贝图片,设置文本格式等,则可能需要打开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

posted on 2012-09-02 21:17  西瓜头  阅读(349)  评论(0)    收藏  举报