《C#程序设计》自编实训课教材教案
项目一 计算器程序的功能实现
学习目标:
(1) 掌握Form窗体、Label控件、Button控件的基本属性设置和事件处理 (2) 掌握Windows应用程序的代码调试及出错信息的处理 (3) 掌握利用C#语言实现一个简单的计算器功能
项目实现步骤
(1) 建立一个新项目。设置主窗体Form1属性MaxiMizeBox=false,属性MINiMizeBox=false.属性
FormBorderStyle=FixedDialog,使窗口不能修改大小。
(2) 放置TextBox控件到窗体,属性Text=”0”,属性ReadOnly=true,TextAlign=right.
(3) 增加10个Button按钮,设置其Text属性分别为1,2,3,4,5,6,7,8,9,0。Name属性分别
为:Button1~Button9,最后一个为Button0。
(4) 增加7个Button控件,属性Name分别为btn_dot, btn_equ, btn_add, btn_sub, btn_mul, btn_div, btn_C,
属性Text分别为:. 、=、+、-、*、/、C。设置完界面如上图。
(5) 为实现加法。增加一个变量double sum = 0,记录部分和。输入了第一个加数,然后输入任一运算
符(+、-、*、\\或=),在输入第二个加数前,应先清除编辑框中显示的第一个加数。为实现此功能,为Form1类增加一个布尔变量了bool blnClear=false。为实现记录输入的运算符的功能,必须定义一个字符串变量string strOper=”+”.
(6) 因为Button0~Button9的所有事件处理过程是一样,所以实现其功能的代码如下:
private void button1_Click(object sender, EventArgs e) {
if (blnclear) {
textBox1.Text = \ blnclear = false; }
if (textBox1.Text ==\ {
textBox1.Text = button1.Text; } else
textBox1.Text += button1.Text;
1
}
(7) 为btn_dot按钮事件处理代码如下
private void button11_Click(object sender, EventArgs e) {
int n = textBox1.Text.IndexOf(\ if (n == -1)
textBox1.Text = textBox1.Text + \ }
编译,运行,单击标题为“0”到\以及\的按钮,在控件textBox1中可以看到输入的数字,也可以输入小数。
(8) 为btn_add, btn_sub, btn_mul, btn_div按钮事件处理代码如下: double dbSecond = Convert.ToDouble(textBox1.Text); if (!blnclear) {
sum = dbSecond;
if (sender == btn_add) //这里为按钮的Name,实现-、*、/要把Name属性改过来。 {
strOper = \ //要修改相关的运算符号。 }
blnclear = true; } (9)、为btn_equ按钮事件处理代码如下:
private void btn_equ_Click(object sender, EventArgs e) {
double dbSecond = Convert.ToDouble(textBox1.Text); if(!blnclear)
switch (strOper) {
case \ break;
case \ break;
case \ break;
case \ break; }
textBox1.Text = Convert.ToString(sum); blnclear = true; } (10)、为标题为“C”按钮增加事件处理函数如下: private void btn_C_Click(object sender, EventArgs e) { textBox1.Text=\ sum=0; blnClear=false; strOper=\ }
2
任务二 记事本编辑器的实现
学习目标: (1)掌握Form窗体、RichTextBox 控件、OpenFileDialog、SaveFileDialog控件、MenuStrip控件FontDialog控件的基本属性设置和事件处理
(2)掌握Windows应用程序的代码调试及出错信息的处理 (3)利用C#语言实现一个简单的记事本程序功能
项目实现步骤
(1)建立一个新项目,设置主窗体Form1的Text属性为:记事本程序的实现。放RichTextBox控件到窗体。属性Name=richTextBox1,Dock=Fill,Text=\。放MenuStrip控件到窗体,为菜单增加顶级菜单项:文件,设Name属性为:mainMenuFile。为其弹出菜单增加菜单项:新建、打开...、保存...、另存为...、退出。修改这些菜单项的Name属性分别为: menuItemFileNew、menuItemFileOpen、menuItemFileSave、menuItemFileSaveAs、menuItemFileExit。
(2)为Form1类中定义变量:string s_FileName=\,记录当前编辑的文件名。为新建功能添加事件处理代码如下:
private void menuItemFileNew_Click(object sender,EventArgs e) //新建文件菜单项 { richTextBox1.Text=\ //或richTextBox1.Clear(); s_FileName=\ //新建文件没有文件名。 }
(3)放OpenFileDialog、SaveFileDialog控件实现打开、保存和另存为功能,实现代码如下 : private void menuItemFileOpen _Click(object sender, EventArgs e) {
if (!IfSaveOldFile()) //如果返回false本次操作取消 return;
if (openFileDialog1.ShowDialog() == DialogResult.OK) {
s_FileName = openFileDialog1.FileName;
richTextBox1.LoadFile(openFileDialog1.FileName,
RichTextBoxStreamType.PlainText);
}
3