c#作业第二期第一弹(记事本程序)
来源:互联网 发布:mysql 时间小于等于 编辑:程序博客网 时间:2024/04/30 12:39
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace TextBoxDemo{ public partial class Editor : Form { public Editor() { InitializeComponent(); } private String OriginalContent = ""; private String _FileName = ""; public String FileName { get { return _FileName; } set { _FileName = value; Text = Path.GetFileName(value) + "-My Note"; //读取路径并且在文件名后面加上-MyNote } } private void textBox1_TextChanged(object sender, EventArgs e) { } private void label1_Click(object sender, EventArgs e) { lblTimer.Text = DateTime.Now.ToString(); //读取当前时间 } private void button1_Click(object sender, EventArgs e) { Open(); } private void Open() { if (openFileDialog1.ShowDialog() == DialogResult.OK) { FileName = openFileDialog1.FileName; try { OriginalContent = File.ReadAllText(FileName); //读取文本内容 txtEditor.Text = OriginalContent; //显示在文本框中 } catch (Exception) { lblInfo.Text = "Error!"; } } } private void button2_Click(object sender, EventArgs e) { Save(); } private void Save() { bool flag = false; //设置标志位,用于显示是否需要保存 if (FileName != "") { if (txtEditor.Text != OriginalContent && MessageBox.Show("The file has changed,do you want to save it?", "Save file", MessageBoxButtons.YesNo) == DialogResult.Yes) //显示文本框的按钮 { flag = true; } } else { if (txtEditor.Text != "" && saveFileDialog1.ShowDialog() == DialogResult.OK) //判断是否文本框内有文本输入 { FileName = saveFileDialog1.FileName; flag= true; } } if (flag) { try { File.WriteAllText(FileName, txtEditor.Text); OriginalContent = txtEditor.Text; lblInfo.Text = "File has saved"; } catch (Exception) { lblInfo.Text = "Error!"; } } } private void saveFileDialog1_FileOk(object sender, CancelEventArgs e) { } private void Editor_Load(object sender, EventArgs e) { lblTimer.Text = ""; //lblTimer初始化,即令lblTimer它不显示在界面上 lblInfo.Text = ""; //同lblTimer Text = "No title-My note"; //一开始打开时的文本框标题 } private void label1_Click_1(object sender, EventArgs e) { } private void Editor_FormClosing(object sender, FormClosingEventArgs e) { Save(); } } }
咳咳,先把代码弄上来,咱看一下界面吧
额,插了个背景图片没想到效果这么差,算了(果然不是做界面的料)。。。
其实这个东西基本上是照着网上的视频做的,链接地址:http://mooc.study.163.com/learn/BIT-1000003016?tid=1000003016#/learn/content?type=detail&id=1000014002&cid=1000010005
上面这些程序呢,总的来说是这样的:
首先先做出界面,界面的制作其实就是添加控件改属性。
用到的控件有:timer openFileDialog saveFileDialog三个控件,就是时间,打开文件,保存文件
当然用了两个label、两个button和一个textBox
对了,图标的更改其实就是选择整个窗体的属性中里面选择属性Icon,图标文件是ico,我自己找网上的jpg做出来的(其实没什么技术含量,就调一下像素为32x32而已,在保存为ico)
其实文件的图标我也改掉了:
就是简单的双击这个东西:
修改
重新生成一下就搞定了。
背景图片呢?就是选择窗体的一个BackgroundImage属性,然后选择图片就行了。
界面基本就这样,至于控件与按钮怎么相连的,看代码就知道了
比如open这段:
就是简单的文件读取,上面那个判别就是判断他是否在打开界面出来后选择了打开按钮而已,选择了就读取文本内容并且显示在文本框中。
就是这个界面的东西:
选择了就读取咯。
对了界面有个东西没显示出来,我让它出来吧:
有个File has saved,好吧不要吐槽我英语,我连6级都没过,语法错误请无视
这个其实就是lblInfo标签显示的内容。具体实现代码上有。
对了,如果修改了却没保存直接点×它会提醒你保存的,在save()函数里有说明,好吧,就这样,吹水结束!
- c#作业第二期第一弹(记事本程序)
- c#作业第二期第二弹(图片查看器)
- 记事本编写第一个c#程序
- 记事本+.NET framework 4.0 创建第一个c# winform 程序
- C#作业第一期,简单的源代码计算器
- C#第二次作业:简易记事本
- C#第二次作业-简易记事本
- C#开发第二天-第一个程序
- 再帖个上学期写的记事本程序
- 简易记事本开发(第二次C#作业)
- 《C#程序设计》第二次作业 简易记事本
- 基于C#的记事本程序
- 用记事本写C#程序
- 用记事本开发C#程序
- 第二次作业:WinForm程序设计-简易记事本程序
- c#作业第5期
- 第二个vb小程序:迷你记事本
- 用记事本写第一个Servlet程序
- request.parameter是数组,不能直接==来用
- linux kernel中的一些utility API---(1)
- Java 成员内部类
- 影响网站seo排名的因素大全
- c#实现改变背景颜色、背景图片、插入背景音乐
- c#作业第二期第一弹(记事本程序)
- samurai-native 学习笔记--samurai的启动过程(待完善)
- java 正则校验
- 零基础入门学习C++ 001
- JDBC(CallableStatement)--In Parameter Insert Record
- 粒子群算法Python实现
- zoj 3866 Cylinder Candy(积分数学)
- Android模拟器之Genymotion
- 第2章 第5题