.Net学习笔记----2015-07-02(记事本应用)

功能更多嘞~

  1     public partial class Form1 : Form
  2     {
  3         public Form1()
  4         {
  5             InitializeComponent();
  6         }
  7         //声明一个泛型集合用来打开文件的全路径
  8         List<string> list = new List<string>();
  9         private void Form1_Load(object sender, EventArgs e)
 10         {
 11             //加载程序的时候隐藏panel
 12             panel1.Visible = false;
 13             //取消文本框的自动换行功能
 14             textBox1.WordWrap = false;
 15         }
 16         /// <summary>
 17         /// 点击按钮的时候也要把panel隐藏
 18         /// </summary>
 19         /// <param name="sender"></param>
 20         /// <param name="e"></param>
 21         private void button1_Click(object sender, EventArgs e)
 22         {
 23             panel1.Visible = false;
 24         }
 25
 26         private void 显示ToolStripMenuItem_Click(object sender, EventArgs e)
 27         {
 28             panel1.Visible = true;
 29         }
 30
 31         private void 隐藏ToolStripMenuItem_Click(object sender, EventArgs e)
 32         {
 33             panel1.Visible = false;
 34         }
 35         /// <summary>
 36         /// 打开对话框
 37         /// </summary>
 38         /// <param name="sender"></param>
 39         /// <param name="e"></param>
 40         private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
 41         {
 42             OpenFileDialog ofd = new OpenFileDialog();
 43             ofd.Title = "请选择要打开的文件";
 44             ofd.InitialDirectory = @"C:\Users\Administrator\Desktop";//初始目录
 45             ofd.Multiselect = true;//设置为多选
 46             ofd.Filter = "文本文件|*.txt|所有文件|*.*";
 47             ofd.ShowDialog();
 48
 49             //获得用户选中的文件的路径
 50             string path = ofd.FileName;
 51             //将文件的全路径存储到泛型集合中
 52             list.Add(path);
 53             //获得用户打开文件的文件名
 54             string fileName = Path.GetFileName(path);
 55             //将文件名放到listbox中
 56             listBox1.Items.Add(fileName);
 57             if (path == "")
 58             {
 59                 return;
 60             }
 61             using (FileStream fsRead = new FileStream(path, FileMode.OpenOrCreate, FileAccess.Read))
 62             {
 63                 byte[] buffer = new byte[1024 * 1024 * 5];
 64                 int r = fsRead.Read(buffer, 0, buffer.Length);
 65                 textBox1.Text = Encoding.Default.GetString(buffer, 0, r);
 66             }
 67         }
 68         /// <summary>
 69         /// 保存对话框
 70         /// </summary>
 71         /// <param name="sender"></param>
 72         /// <param name="e"></param>
 73         private void 保存ToolStripMenuItem_Click(object sender, EventArgs e)
 74         {
 75             SaveFileDialog sfd = new SaveFileDialog();
 76             sfd.InitialDirectory = @"C:\Users\Administrator\Desktop";
 77             sfd.Title = "请选择要保存的文件路径";
 78             sfd.Filter = "文本文件|*.txt|所有文件|*.*";
 79             sfd.ShowDialog();
 80             //获得用户要保持的文件的路径
 81             string path = sfd.FileName;
 82             if (path == "")
 83             {
 84                 return;
 85             }
 86             using (FileStream fsWrite = new FileStream(path, FileMode.OpenOrCreate, FileAccess.Write))
 87             {
 88                 byte[] buffer = Encoding.Default.GetBytes(textBox1.Text);
 89                 fsWrite.Write(buffer, 0, buffer.Length);
 90             }
 91             MessageBox.Show("保存成功");
 92         }
 93
 94         private void 自动换行ToolStripMenuItem_Click(object sender, EventArgs e)
 95         {
 96             if (自动换行ToolStripMenuItem.Text == "自动换行")
 97             {
 98                 textBox1.WordWrap = true;
 99                 自动换行ToolStripMenuItem.Text = "取消自动换行";
100             }
101             else if (自动换行ToolStripMenuItem.Text == "取消自动换行")
102             {
103                 textBox1.WordWrap = false;
104                 自动换行ToolStripMenuItem.Text = "自动换行";
105             }
106         }
107
108         private void 字体ToolStripMenuItem_Click(object sender, EventArgs e)
109         {
110             FontDialog fd = new FontDialog();
111             fd.ShowDialog();
112             textBox1.Font = fd.Font;
113         }
114
115         private void 颜色ToolStripMenuItem_Click(object sender, EventArgs e)
116         {
117             ColorDialog cd = new ColorDialog();
118             cd.ShowDialog();
119             textBox1.ForeColor = cd.Color;
120         }
121         /// <summary>
122         /// 双击打开对应的文件
123         /// </summary>
124         /// <param name="sender"></param>
125         /// <param name="e"></param>
126         private void listBox1_DoubleClick(object sender, EventArgs e)
127         {
128             //要获得双击的文件所对应的全路径
129             string path = list[listBox1.SelectedIndex];
130             using (FileStream fsRead = new FileStream(path, FileMode.OpenOrCreate, FileAccess.Read))
131             {
132                 byte[] buffer = new byte[1024 * 1024 * 5];
133                 int r = fsRead.Read(buffer, 0, buffer.Length);
134
135                 textBox1.Text = Encoding.Default.GetString(buffer, 0, r);
136             }
137         }
138     }
时间: 2024-07-29 11:22:43

.Net学习笔记----2015-07-02(记事本应用)的相关文章

【Ext.Net学习笔记】07:后续

程序员必看书籍(转载) C++: Prata<C++ Primer Plus>:基础,第一本书.(之前的版本也可,不过推荐最新的) Lippman<Inside C++ Object Model>:初级,加深语言层次上的理解.不过有点小老了.里面的cfront编译器早退出江湖好久了.思想值得学习 侯捷<STL源码剖析>:第三本书,中级,深入STL Vandevoorde<C++ Template>:第四本,中级,范式编程 罗剑锋<Boost>两本

HTML第一天学习笔记2015 10 01

如需在 HTML5 中显示视频,您所有需要的是: <video src="movie.ogg" controls="controls"> </video> <html> 与 </html> 之间的文本描述网页 <body> 与 </body> 之间的文本是可见的页面内容 <h1> 与 </h1> 之间的文本被显示为标题 <p> 与 </p> 之间的

【JAVAWEB学习笔记】07

今天主要学习了BootStrap,viewport的介绍和最后对网站进行了重构 今天晨读单词: Compatible:兼容性viewport:视口device:设备initial:初始化(缩写init)Template:模板scale:缩放container:容器fluid:液体,流navbar:导航条icon:图标dropdown:向下separator:分割group:组current:当前inverse:相反的active:激活default:默认的item:项 Viewport介绍 一.

《Effective C++ 》学习笔记——条款07

***************************************转载请注明出处:http://blog.csdn.net/lttree******************************************** 二.Constructors,Destructors and Assignment Operators Rule 07:Declare destructors virtual in polymorphic base classes 规则07:为多态基类声明vir

OpenGL学习笔记-2015.3.24——transform feedback缓存&amp;粒子系统示例分析

transform feedback是OpenGL中比较酷炫的特性之一,他让客户端应用程序可以获取到渲染流水线上的顶点数据.基于这一特性实现了基于z-pass场景决策渲染技术,当然在此并没有去了解何为z-pass场景决策渲染技术,总之是一个可以有效减少渲染数据的输送.这里只是通过一个简单的例子系统,去了解transform feedback对象的使用方法. 正文: 1.transform feedback: transform feedback是OpenGL渲染管线中,顶点处理阶段结束之后,图元

路冉的JavaScript学习笔记-2015年1月23日

1.JavaScript的数据类型 A.原始类型:包含数值.字符串.布尔值.空值(null)和未定义值(undefined). Js原始类型均为不可改变类型.对不可变类型调用任何自带方法都不会改变原始值,除非重新赋值.例如: var s="Hello,World"; s.toUpperCase();//将字串全部大写 console.log("s的值为:"+s); 在Firefox Firebug控制台内执行结果为: B.对象类型:对象为Js类的实例,使用“构造函数

.NET学习笔记之数据库02

1.数据冗余的问题: 1>造成了存储空间的浪费.   2>更新异常,删除异常, 所以一般情况下不允许出现表中出现数据冗余. --------------------------解决方法------------------------------------ 把原来的表中的数据拆分成多个表来存储. 当把表中信息拆分成多个表来存储的时候会出现一个问题:如何将这张表的数据关联起来? 使用主键和外键来进行关联,使用主外建就能将不同表中的数据联系起来. 什么是外键,如何通过主外键将表中的数据关联起来?

学习笔记-Android简单记事本(三)-添加图片

终于遇到BUG了... 我刚才还十分的疑惑,为什么极客学院官方视频里面在演示相机功能的时候为什么偏要使用真机,而不是模拟器.要知道,模拟器也是可以模拟相机的使用的.所以这样说不通. 一开始我还很年轻的以为是因为模拟器会出现效果不是很好的原因,然后后来我在模拟器上面一运行才知道了端倪. 妈的.这他娘的就是一个BUG的程序好吗? 按照目前的问题来看,BUG应该是出在我自己的代码之中.但是我的代码全部都是跟着视频的代码来的. 目前的猜测: 我自己代码写错了. 极客学院这套教程只有即时性与个体性.现在的

Effective C++学习笔记 条款07:为多态基类声明virtual析构函数

一.C++明确指出:当derived class对象经由一个base class指针被删除,而该base class带着一个non-virtual析构函数,其结果未定义——实际执行时通常发生的是对象的derived成分没有被销毁!(注:使用基类引用派生类的方式使用多态,由于引用只是对原对象的一个引用或者叫做别名,其并没有分配内存,对其引用对象内存的销毁,将由原对象自己负责,所以使用引用的时候,如果析构函数不为virtual,那么也不会发生derived成员没有销毁的情况) 例如: class b

&lt;&lt;Python基础教程&gt;&gt;学习笔记 | 第07章 | 更加抽象

------ Python:面向对象的编程语言,多态,封装,继承三个主要特性 多态:来自希腊语,意味着有多种形式. >>> from random import choice >>> x = choice(['Hello,World!',[1,2,'e','e',4]]) >>> x.count('e') 1 任何不知道对象到底是什么类型,但又要对对象做的什么的时候,就要用到多态 >>> 1+2 3 >>> 'hot