《winform窗体应用程序》----------简易记事本
首先先给大家发表几张图片,描述一下记事本程序要实现的功能以及界面设计。






以上这些就是简易记事本的的主界面设计。
下面我们来做一些简单的讲解;
1.使用MenuStrip控件来实现菜单栏的基本设计。
在VS2013的侧面工具栏里面拖拽一个menustriP控件,在控件里面做菜单栏的设计。这时候应该注意我们应该在下侧的MenuStrip里面进行设计。

选择编辑项在里面进行设计,在设计完成菜单栏的大体框架之后,我们就要完成菜单栏的具体功能的实现。
具体的程序设计代码需要在每一个按钮的click事件里面完成,代码如下:
打开操作:
private void toolStripMenuItem5_Click(object sender, EventArgs e)
{
OpenFileDialog on = new OpenFileDialog();
on.Filter = "文本文件(.txt)|*.txt|Word文档(.doc)|*.doc|媒体文件(.avi)|*.avi";
if(on.ShowDialog() == DialogResult.OK)
Process.Start(on.FileName);
}
保存操作:
private void toolStripMenuItem6_Click(object sender, EventArgs e)
{
saveFile();
}
private void saveFile()
{
FrmNote Labname = new FrmNote();
string Myfilename = Labname.Text;
Myfilename = Labname.Text.ToUpper();
richTextBox1.SaveFile(Myfilename, RichTextBoxStreamType.PlainText);
}
关闭操作:
private void toolStripMenuItem8_Click(object sender, EventArgs e)
{
Application.Exit();
}
剪切:
private void toolStripMenuItem11_Click(object sender, EventArgs e)
{
if (richTextBox1.CanSelect)
richTextBox1.Cut();
}
复制:
private void toolStripMenuItem12_Click(object sender, EventArgs e)
{
if (richTextBox1.CanSelect)
richTextBox1.Copy();
}
粘贴:
private void toolStripMenuItem13_Click(object sender, EventArgs e)
{
IDataObject iData = Clipboard.GetDataObject();
if (iData.GetDataPresent(DataFormats.Text))
this.richTextBox1.SelectedText = (String)iData.GetData(DataFormats.Text);
}
删除:
private void toolStripMenuItem14_Click(object sender, EventArgs e)
{
if (richTextBox1.CanSelect)
richTextBox1.Undo();
}
字体设计:
private void toolStripMenuItem18_Click(object sender, EventArgs e)
{
richTextBox1.Font = new Font("黑体", 15);
}
自选字体项:
private void 其他ToolStripMenuItem_Click(object sender, EventArgs e)
{
FontDialog on = new FontDialog();
on.Font = richTextBox1.SelectionFont;
if (on.ShowDialog() == DialogResult.OK)
richTextBox1.SelectionFont = on.Font;
}
颜色设置:
private void toolStripMenuItem21_Click(object sender, EventArgs e)
{
richTextBox1.ForeColor = Color.Red;
}
自选颜色设置:
private void 其他ToolStripMenuItem1_Click(object sender, EventArgs e)
{
ColorDialog on = new ColorDialog();
if (on.ShowDialog() == DialogResult.OK)
richTextBox1.SelectionColor = on.Color;
}
背景颜色:
private void 背景颜色ToolStripMenuItem_Click(object sender, EventArgs e)
{
ColorDialog on = new ColorDialog();
if (on.ShowDialog() == DialogResult.OK)
richTextBox1.BackColor = on.Color;
}
工具栏菜单——ToolStrip
- 功能要求:实现工具栏的基本设计。
- 控件组成以及属性设置:
l 在创建ToolStrip控件之前,可以先创建一个ToolStripContainer控件,用于摆放工具栏,文本框和状态栏的位置。其中单击小箭头,选择在窗体中停靠填充,并且面版可见性中,不选择左右(如图5所示)。
注:也可以不做,直接做下一步,新建工具栏也可以。
单击toolStripContainer上面的按钮,创建ToolStrip控件
打开,保存,查找,剪切,复制,粘贴
- 属性:提示信息由每个菜单项的ToolTipText设置。
- 功能实现:剪切,复制,粘贴按钮功能和“编辑菜单”中的相应功能相同
高级文本框控件——RichTextBox
- 功能要求:用于输入文字信息,并且可以利用右键设置文字的字体和颜色。
- 控件及属性设置——RichTextBox
创建RichTextBox时,单击上方小箭头,选择在父容器中停靠
《winform窗体应用程序》----------简易记事本的更多相关文章
- C# winform 窗体应用程序之图片上传Oracle数据库保存字段BLOB
C# winform 窗体应用程序之图片上传Oracle数据库保存字段BLOB 我用的数据库是Oracle,就目前来看,许多数据库现在都倾向于Oracle数据库,对ORACLE数据库基本的操作也是必须 ...
- winform窗体 小程序【线程】
线程是进程中执行运算的最小单位,也是执行处理机调度的基本单位.实际上线程是轻量级的进程.那么为什么要使用线程呢? (1)易于调度. (2)提高并发性.通过线程可方便有效地实现并发性.进程可创建多个线程 ...
- WinForm 窗体应用程序(初步)之一
学习制作一个WinForm程序,有两样东西是需要首先掌握的.第一部分,我们称之为属性面板.无论是窗体还是控件,都有着自己的属性面板.第二部分,则是我们称之为控件的东西. 我们先来讨论一下属性面板.新建 ...
- WinForm窗体更新程序
流程介绍: 打包参阅:WinForm程序打包说明 图一 图二 图三 实现步骤: 主程序 1.检测是否连上ftp服务器 1.1 连接不上,不检测. 1.2 连接上,如果有更新进程, ...
- 设置WinForm窗体及程序图标
自己留着看,总是用的时候给忘记了,百度来百度去的麻烦. 设置 Ico 图标为 [资源文件] 项目名à右键à属性,在选项卡中选择"资源" 选择 "添加资源"à ...
- winform窗体 小程序【进程】
进程 一个应用程序就是一个进程,我的理解是,只要是打开应用程序,就会创建进程. 在.NET框架在using.System.Diagnostics名称空间中,有一个类Process,用来创建一个新的进程 ...
- winform窗体 小程序【登录窗体】【恶搞程序】
登录窗体 using System; using System.Collections.Generic; using System.Data.SqlClient; using System.Linq; ...
- WinForm 窗体应用程序 (初步)之二
现在,我们来了解一些基本控件.控件是放置在工具箱里的,你可以在界面的左侧或者通过菜单栏的视图选项找到它. (1)Label 控件 这是一个用于放置文字的控件,因为你不能在窗体上直接输入文字. (2)T ...
- WinForm 窗体应用程序(进阶)之一
进程: 进程,简单的说,就是让你的程序启动另一个程序. 1.Process.Start("calc");//启动计算器 弊端:只认识系统自带的程序,如果写错系统会崩溃. 2. // ...
随机推荐
- window.onload() 和 $(function(){})
再使用 $(function(){})的时候,发现一直取不到元素.但是换成window.onload()则可以取到. 大概推测是页面加载问题,于是把js从header移到了footer,发现 $(fu ...
- UE4 VR GUI实现 参考(UMG AND VR)
Note:4.13以后版本VR UI采用 WidgetComponent + WidgetInteractionComponent可轻松实现交互 Blueprint Demo: https://for ...
- [转]使用scrapy进行大规模抓取
原文:http://www.yakergong.net/blog/archives/500 使用scrapy有大概半年了,算是有些经验吧,在这里跟大家讨论一下使用scrapy作为爬虫进行大规模抓取可能 ...
- 常见Linux命令的介绍
今天看到了一些Linux命令的英文全称,于是,就总结上来.通过理解英文全称,去更好的理解与记忆Linux命令. 1.ls——List 列举出当前工作目录的内容(文件或文件夹),就跟你在GUI中打开一个 ...
- 附加数据库失败,操作系统错误 5:"5(拒绝访问。)"的解决办法
无法打开物理文件 XXX.mdf".操作系统错误 5:"5(拒绝访问.)". (Microsoft SQL Server,错误: 5120) 找到xxx.MDF与xx ...
- web框架思考
以前一直不明白web框架是怎样实现路由.orm.接受请求的.今天看了下廖雪峰的python 实现web框架博客才明白. 简单总结并记录: http请求->wsgi->处理请求->返回 ...
- 腾讯优测优分享 | 游戏的UI自动化测试可以这样开展
腾讯优测是专业的自动化测试平台,提供自动化测试-全面兼容性测试,云真机-远程真机租用,漏洞分析等多维度的测试服务,让测试更简单! 对于目前的两大游戏引擎cocos-2dx.unity3D,其UI自动化 ...
- js 获取当前焦点所在的元素、给元素和input控件添加键盘监听事件、添加页面级的键盘监听事件
页面级的键盘监听事件 document.onkeydown = function (event) { var e = event || window.event || arguments.callee ...
- IOS懒加载
1.懒加载基本 懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小).所谓懒加载,写的是其get方法. 注意:如果是懒加载的话则一定要注意先判断是否已经有了,如果没有那么再去进行实例化 ...
- 转载《Android LayoutInflater详解》
在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById().不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例 ...