江苏开放大学NET平台与C#程序设计第三次形考作业

微信小程序
资源下载
文档
下载价格15 金币
CSNotePad
下载价格15 金币

实验名称:

一、实验目的及要求

1. 掌握Button、Label、TextBox、RadioButton、CheckBox、ListBox、ComboBox控件的使用

二、实验内容

1. 针对课本上的Button、Label、TextBox控件实例上机操作

2. 针对课本上的RadioButton、CheckBox控件实例上机操作

3. 针对课本上的ListBox、ComboBox控件实例上机操作

三、实验设备及环境

1.安装visual studio2010软件

四、实验步骤(功能实现的核心代码及说明)

本实验以讲义中的设计简易计事本案例作为本次形考作业实验报告,实现 Windows 操作系统自带“记事本”的外观效果如图1所示,参考其界面特点和菜单,设计一个类似的“记事本”,自制记事本包括菜单栏,工具栏、状态栏和多个控件,并能实现基本功能。

(1)在”记事本”窗口添加“文件(F)”“编辑(E)”格式(O)”查看(V)”和“帮助(H)”等主莱单,在”帮助”主菜单中添加多个子菜单项,“记事本”的主菜单及“帮助”下拉菜单如图8-37所示。在“文件”主菜单中添加多个子菜单项,如图2所示。

图1“记事本”的主菜单及“帮助下拉菜单” 图2“记事本”的“文件”下拉菜单

(2)在“记事本”窗口添加1个快捷菜单,该快捷菜单包含“剪切(T)”“复制(C)”和“粘贴(P)”3个菜单项。

(3)在“记事本”窗口添加1个工具栏,该工具栏中添加两组按钮,第1组包括“新建”“打开”“保存”3个按钮,第2组包括“剪切”“复制”和“粘贴”3个按钮。

(4)在“记事本”窗口添加1个状态栏,该状态栏主要显示相关信息。

(5)在“记事本”窗口中添加1个RichTextBox 控件,该控件用于文本内容和显示打开文件中的内容。

(6)在“记事本”窗口中添加1个OpenFileDialog控件和1个SaveFileDialog控件。

(7)单击“打开”菜单项或工具栏“打开”按钮,可以打开文本文件,并将打开文本文件

的内容显示在 RichTextBox 控件中.

(8)在Rich TextBox控件中输入文本内容,然后单击“保存”菜单项或工具栏中的“保

存”按钮,可以将输入的内容保存在硬盘中的指定位置。

  1. “新建”菜单项或工具栏中的“新建”按钮能新建1个文件,并将 RichTextBox控件内容清除。单击“退出”菜单项可以关闭“记事本”窗口,并退出应用程序。

任务一

把实验的相关代码复制到下面实验结果中,并把代码运行的相关运行结果图截屏存放在代码的下面

  1. 实验结果(程序运行结果等,可附截图)

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 CSNotePad

{

public partial class Form1 : Form

{

private string fn = “无标题”;

private StringReader myReader;

public Form1()

{

InitializeComponent();

}

private void 打开OCtrlOToolStripMenuItem_Click(object sender, EventArgs e)

{

DialogResult result;

StreamReader sr;

StreamWriter sw;

try

{

if (richTextBox1.Modified)

{

result = MessageBox.Show(“文件 ” + fn + ” 的文字已经改变。\r\n\r\n想保存文件吗?”, “记事本”, MessageBoxButtons.YesNoCancel, MessageBoxIcon.Exclamation);

if (result == DialogResult.Cancel)

return;

if (result == DialogResult.Yes)

{

saveFileDialog1.Filter = @”文本文档(*.txt)|*.txt|所有格式|*.txt; *.cs”;

saveFileDialog1.FilterIndex = 2;

if (saveFileDialog1.ShowDialog() == DialogResult.OK)

{

fn = saveFileDialog1.FileName;

sw = new StreamWriter(fn, false, System.Text.Encoding.Default);

sw.Write(richTextBox1.Text);

this.Text = Path.GetFileName(fn) + ” – 记事本”;

richTextBox1.Modified = false;

sw.Flush();

sw.Close();

}

else

return;

}

}

openFileDialog1.Filter = @”文本文档(*.txt)|*.txt|所有格式|*.txt; *.cs”;

openFileDialog1.FilterIndex = 2;

if (openFileDialog1.ShowDialog() == DialogResult.OK)

{

fn = openFileDialog1.FileName;

sr = new StreamReader(fn, System.Text.Encoding.Default);

richTextBox1.Text = sr.ReadToEnd();

richTextBox1.Modified = false;

sr.Close();

//this.Text = Path.GetFileName(fn) + ” – 记事本”;

this.Text = openFileDialog1.SafeFileName + ” – 记事本”;

saveFileDialog1.FileName = openFileDialog1.FileName;

}

}

catch { }

}

private void 保存SCtrlSToolStripMenuItem_Click(object sender, EventArgs e)

{

StreamWriter sw;

try

{

if (richTextBox1.Modified)

{

if (fn == “无标题”)

{

saveFileDialog1.Filter = @”文本文档(*.txt)|*.txt|所有格式|*.txt; *.cs”;

saveFileDialog1.FilterIndex = 2;

if (saveFileDialog1.ShowDialog() == DialogResult.OK)

fn = saveFileDialog1.FileName;

}

sw = new StreamWriter(fn, false, System.Text.Encoding.Default);

sw.Write(richTextBox1.Text);

richTextBox1.Modified = false;

sw.Flush();

sw.Close();

this.Text = Path.GetFileName(fn) + ” – 记事本”;

}

}

catch (Exception ex)

{

MessageBox.Show(“文件无法打开或读取。请确认文件名称是否正确,以及您是否有读取权限。\n异常:” + ex.Message);

}

}

private void 另存为AToolStripMenuItem_Click(object sender, EventArgs e)

{

try

{

if (richTextBox1.Text != string.Empty)

{

saveFileDialog1.Filter = @”文本文档(*.txt)|*.txt|所有格式|*.txt; *.cs”;

saveFileDialog1.FilterIndex = 2;

if (this.saveFileDialog1.ShowDialog() == DialogResult.OK)

{

fn = saveFileDialog1.FileName;

StreamWriter sw = new StreamWriter(fn, false, System.Text.Encoding.Default);

sw.Write(richTextBox1.Text);

richTextBox1.Modified = false;

sw.Flush();

sw.Close();

this.Text = Path.GetFileName(fn) + ” – 记事本”;

}

}

}

catch (Exception ex)

{

MessageBox.Show(“文件无法打开或读取。请确认文件名称是否正确,以及您是否有读取权限。\n异常:” + ex.Message);

}

}

private void toolStripButton4_Click(object sender, EventArgs e)

{

if (richTextBox1.SelectedText != string.Empty)

richTextBox1.Cut();

}

private void toolStripButton5_Click(object sender, EventArgs e)

{

if (richTextBox1.SelectionLength > 0)

richTextBox1.Copy();

}

private void toolStripButton6_Click(object sender, EventArgs e)

{

if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))

{

if (richTextBox1.SelectionLength > 0)

{

DialogResult result;

result = MessageBox.Show(“你想覆盖掉选择的文本吗?”, “覆盖确认”, MessageBoxButtons.YesNo);

if (result == DialogResult.No)

{

richTextBox1.SelectionStart = richTextBox1.SelectionStart + richTextBox1.SelectionLength;

richTextBox1.SelectionLength = 0;

}

}

richTextBox1.Paste();

}

}

private void 新建NCtrlNToolStripMenuItem_Click(object sender, EventArgs e)

{

StreamWriter sw;

try

{

if (richTextBox1.Modified)

{

DialogResult result = MessageBox.Show(“文本发生了改变, 要保存吗?”, “注意”, MessageBoxButtons.YesNoCancel);

if (result == DialogResult.Yes)

{

if (fn == “无标题”)

{

saveFileDialog1.Filter = @”文本文档(*.txt)|*.txt|所有格式|*.txt; *.cs”;

saveFileDialog1.FilterIndex = 2;

if (saveFileDialog1.ShowDialog() == DialogResult.OK)

fn = saveFileDialog1.FileName;

}

sw = new StreamWriter(fn, false, System.Text.Encoding.Default);

sw.Write(richTextBox1.Text);

sw.Flush();

sw.Close();

richTextBox1.Clear();

richTextBox1.Modified = false;

this.Text = “无标题 – 记事本”;

saveFileDialog1.FileName = fn = “无标题”;

}

else if (result == DialogResult.No)

{

richTextBox1.Clear();

richTextBox1.Modified = false;

this.Text = “无标题 – 记事本”;

saveFileDialog1.FileName = fn = “无标题”;

}

}

else

{

richTextBox1.Clear();

richTextBox1.Modified = false;

this.Text = “无标题 – 记事本”;

saveFileDialog1.FileName = fn = “无标题”;

}

}

catch (Exception ex)

{

MessageBox.Show(“文件无法打开或读取。请确认文件名称是否正确,以及您是否有读取权限。\n异常:” + ex.Message);

}

}

private void 退出XToolStripMenuItem_Click(object sender, EventArgs e)

{

this.Close();

}

private void 关于记事本AToolStripMenuItem_Click(object sender, EventArgs e)

{

MessageBox.Show(“版权所有© 2020”, “关于\”记事本\””, MessageBoxButtons.OK);

}

private void toolStripButton1_Click(object sender, EventArgs e)

{

新建NCtrlNToolStripMenuItem_Click(null,null);

}

private void toolStripButton2_Click(object sender, EventArgs e)

{

打开OCtrlOToolStripMenuItem_Click(null,null);

}

private void toolStripButton3_Click(object sender, EventArgs e)

{

保存SCtrlSToolStripMenuItem_Click(null, null);

}

private void Form1_FormClosing(object sender, FormClosingEventArgs e)

{

if (richTextBox1.Modified == true)

{

DialogResult dr = MessageBox.Show(“文件发生变化,是否更改保存?”, “注意”, MessageBoxButtons.YesNoCancel);

if (dr == DialogResult.Yes)

{

保存SCtrlSToolStripMenuItem_Click(null, null);

return;

}

else if (dr == DialogResult.No)

{

return;

}

else if (dr == DialogResult.Cancel)

{

e.Cancel = true;

}

}

}

private void 剪切TToolStripMenuItem_Click(object sender, EventArgs e)

{

if (richTextBox1.SelectedText != string.Empty)

richTextBox1.Cut();

}

private void 复制CToolStripMenuItem1_Click(object sender, EventArgs e)

{

if (richTextBox1.SelectionLength > 0)

richTextBox1.Copy();

}

private void 粘贴PToolStripMenuItem_Click(object sender, EventArgs e)

{

if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))

{

if (richTextBox1.SelectionLength > 0)

{

DialogResult result;

result = MessageBox.Show(“你想覆盖掉选择的文本吗?”, “覆盖确认”, MessageBoxButtons.YesNo);

if (result == DialogResult.No)

{

richTextBox1.SelectionStart = richTextBox1.SelectionStart + richTextBox1.SelectionLength;

richTextBox1.SelectionLength = 0;

}

}

richTextBox1.Paste();

}

}

}

}

1602754601

1602811129(1) 1602811237(1)

1602814958(1)

1602816399(1)

1602816451(1)

六、实验小结

评阅意见:

 

评阅得分:

 

评阅教师:

评阅时间:

点点赞赏,手留余香 给TA打赏

AI创作

评论0

请先

江苏开放大学考试题库江苏开放大学考试题库了解详情
2023年春江苏开放大学大学英语(B)(1)过程性考核作业4
2023年春江苏开放大学大学英语(B)(1)过程性考核作业4
5分钟前 有人购买 去瞅瞅看
2024春江苏开放大学计算机应用基础第三次形成作业Excel 制作某行业或企业人才素质状况调查表
2024春江苏开放大学计算机应用基础第三次形成作业Excel 制作某行业或企业人才素质状况调查表
5分钟前 有人购买 去瞅瞅看
小张(男性)是森林集团办公室的主任,后天巨力文化公司前来商谈业务,按照领导的安排,小张需要后天晚上在歌舞厅招待巨力文化公司的合作伙伴,请结合实际情况,谈谈小张应该注意哪些事项,较好地完成这项任务。
小张(男性)是森林集团办公室的主任,后天巨力文化公司前来商谈业务,按照领导的安排,小张需要后天晚上在歌舞厅招待巨力文化公司的合作伙伴,请结合实际情况,谈谈小张应该注意哪些事项,较好地完成这项任务。
4分钟前 有人购买 去瞅瞅看
支持多种货币
支持多种货币付款,满足您的付款需求
7天无忧退换
安心无忧购物,售后有保障
专业客服服务
百名资深客服7*24h在线服务
发货超时赔付
交易成功极速发货,专业水准保证时效性

站点公告

课程作业辅导,有需要加微信
显示验证码

社交账号快速登录