《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. // ...
随机推荐
- ACM_1001_Exponentiation 详解
参考:http://blog.csdn.net/rually/article/details/8585268 #include<iostream> using namespace std; ...
- java集合类的学习(一)
为何要用集合类:可以储存不同类型的数据,可以进行动态的删除和修改,不用考虑数组越界的问题. 软件开发常用的集合类:Vector,ArrayList,Stack,HashMap,Hashtable. 3 ...
- WPF程序如何自定义启动窗口并传参
首先,找到App.xaml,将Application标签中的StartupUri属性去掉; 然后可以在MainWindow.xaml.cs中重载构造函数,并添加自己想要的参数; 然后在App.xaml ...
- Designing for iOS: Graphics & Performance
http://robots.thoughtbot.com/designing-for-ios-graphics-performance [原文] In the previous article, w ...
- Ansible-Tower快速入门-7.配置实时事件【翻译】
配置实时事件 在tower的菜单中,在接近用户菜单处有一个带有颜色的小点,这个带颜色的小点显示tower的实时事件功能的状态 如果这个小点是绿色的,表示运行正常,如果这个小点是红色或橙色,表示实时事件 ...
- 从一个数组中提取出第start位到第end位
假设通过数组in来表示一个很大的数(in[0]表示最低bit),提取该数的第start位到第end位(计数起始位为0): #define MAX_BYTE_LEN ( 48 ) int getData ...
- 页面无法加载main.css
html应该用append,不是html,会覆盖掉文件
- linux常用vi命令
1:vi +n filename :打开文件,并将光标置于第n行首 2:在底行模式下,输入:set nu显示行号3:将光标移动到248行,命令:248G,即在命令行模式下输入248shitf+g4:复 ...
- springmvc学习笔记--ueditor和springmvc的集成
前言: 在web开发中, 富文本的编辑器真心很重要. 有电商店铺的打理, 新闻稿/博客文章/论坛帖子的编辑等等, 这种所见即所的编辑方式, 大大方便了非技术人员从事互利网相关的工作. 因为手头有个小项 ...
- CSS---解决内容过多就会出文本溢出(显示在区域外面,不换行的情况)
当我们设置我的的div,或者其它文本框固定宽度之后,文本内容过多就会出文本溢出(显示在区域外面,不换行的情况). 这时我们可以使用Css中的几个属于来解.有以下的三个属于可以解决问题: 1,word- ...