• C#面向对象程序设计课程实验二: 实验名称:Windows 窗体程序


    实验内容:Windows 窗体程序

    在这里插入图片描述

    一、实验目的及要求

    • (1) 掌握控件 Label、Button、TextBox 的常用属性、方法、事件的基本应用;
    • (2) 掌握控件 RadioButton、CheckBox 的常用属性、方法、事件的基本应用通过简单程 序;
    • (3) 掌握框-架类控件 GroupBox、Panel、TabControl 的基本应用;
    • (4) 掌握控件 ListBox、CombBox 、ListView 的常用属性、方法、事件的基本应用;
    • (5) 掌握 Windows 应用程序的结构;
    • (6)掌握 WinForm 的设计
    • (7)进一步学习掌握查找与修改编译错误的方法;

    二、实验环境

    Microsoft Visual Studio 2008

    三、实验内容与步骤

    一、设计简单的计算器

    3.1、实验内容

    • 设计一个简单的计算器,使其可以进行加、减、乘、除计算,程序运行状态如图所 示。(教材第 4 章 113 页 3.1 题)

    如下所示

    在这里插入图片描述

    3.2、实验步骤

    1、实验界面的属性设置如下:

    • (1)三个Lable的Text属性:第一个数、第二个数、运算结果。
    • (2)四个RadButton的Text属性和Name属性:+和radAdd、-和radSub、×和radMul、÷和radDiv。
    • (3)一个Button的Name和Text属性:btnOk和运算。

    2、实验程序的设计代码如下:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    
    namespace 实验二_1_
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void btnOk_Click(object sender, EventArgs e)
            {
                double a, b;
                a = Convert.ToDouble(txtDigit1.Text);
                b = Convert.ToDouble(txtDigit2.Text);
    
                if (radAdd.Checked)
                    txtShow.Text =Convert.ToString(a + b);
                if (radSub.Checked)
                    txtShow.Text = Convert.ToString(a - b);
                if (radMul.Checked)
                    txtShow.Text = Convert.ToString(a * b);
                if (radDiv.Checked)
                {
                    if (b==0)
                        MessageBox.Show("除数不能为零!");
                    else 
                        txtShow.Text = Convert.ToString(a / b);
                }
            }
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 3、实验的运行结果如下
    1. 3.1、简单的计算器的除
      在这里插入图片描述
      在这里插入图片描述

    2. 3.2、简单的计算器的乘
      在这里插入图片描述

    3. 3.3、简单的计算器的减

    在这里插入图片描述

    1. 3.4、简单的计算器的加

    在这里插入图片描述

    4、实验实现了加减乘除的基本运算,并且可以判断除数不能为零的情况。

    二、设计选购计算器配置的应用程序

    3.1、实验内容

    • 设计一个选购计算器配置的应用程序,如下图所示。当用户选定了基本配置并且 单击“确定”按钮后,在右边的列表框中显示所选择的信息。(教材第 4 章 113 页 3.2 题)

    如下所示

    在这里插入图片描述

    3.2、实验步骤

    • 1、实验的界面设计如下:
    容器Name属性Item属性DropDownHeight属性Text属性
    comboBoxcboCollection联想 方正 Dell 兼容机Simple
    groupBox1CPU
    groupBox2内存
    groupBox3其他设备
    基本控件Name属性Text属性
    RadioButton1radPentiumDPentium D
    RadioButton2radPentiumMPentium M
    RadioButton3radXeonXeon
    RadioButton4rad256MB256MB
    RadioButton5Rad512MB512MB
    CheckBox1chkPrinter打印机
    CheckBox2chkModeMode
    CheckBox3chkNetConfiguration网络适配器
    ListBoxlstShow
    ButtonbtnOk确定
    • 2、实验的程序设计代码如下:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    
    namespace 实验二_2_
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void btnOk_Click(object sender, EventArgs e)
            {
                lstShow.Items.Clear();
                string a = cboCollection.SelectedItem.ToString();
                lstShow.Items.Add(a);
    
                if (radPentiumD.Checked)
                    lstShow.Items.Add(radPentiumD.Text);
                if (radPentiumM.Checked)
                    lstShow.Items.Add(radPentiumM.Text);
                if (radXeon.Checked)
                    lstShow.Items.Add(radXeon.Text);
    
                if (rad256MB.Checked)
                    lstShow.Items.Add(rad256MB.Text);
                if (rad512MB.Checked)
                    lstShow.Items.Add(rad512MB.Text);
    
                if (chkPrinter.Checked)
                    lstShow.Items.Add(chkPrinter.Text);
                if (chkMode.Checked)
                    lstShow.Items.Add(chkMode.Text);
                if (chkNetConfiguration.Checked)
                    lstShow.Items.Add(chkNetConfiguration.Text);
            }
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 3、实验的运行效果如下:
    1. 3.1
      在这里插入图片描述

    2. 3.2
      在这里插入图片描述

    3. 3.3
      在这里插入图片描述

    • 4、lstShow.Items.Clear();语句实现了每一次操作,将原有的ListBox的Item集合清除的效果。

    四、实验总结

    在这里插入图片描述

    • 1、通过C#的Windows掌握了Button、TextBox、RadioButton、CheckBox GroupBox等基本控件和容器的基本属性。
    • 2、掌握了ListBox的Item的Add方法添加项目等基本用法。
    • 3、掌握了Convert的类进行数据的转换方法的应用。
    • 4、实验过程中出现了
    if (b=0)
       MessageBox.Show("除数不能为零!");
    
    • 1
    • 2

    基本错误,编译不成功,才知道应该为

    b==0(b=0是赋值语句,而b==0是判断b是否等于零)
    • 1

    在这里插入图片描述

  • 相关阅读:
    JS:给数字添加千分位符(每3位数用逗号隔开)
    一年前端面试打怪升级之路
    spark基本原理&UI界面解读
    Android app 通过meta-data向setting里添加菜单
    学习JDBC总结
    华硕ROG2/ROG5/ROG6/ROG7Pro强解锁L锁-快速实现root权限-支持Zenfone9/8/7
    【JVM系列】- 类加载子系统与加载过程
    golang waitGroup(1)
    记一次docker的mysql损坏修复经历
    STM32复习笔记(五):FSMC连接外部SRAM
  • 原文地址:https://blog.csdn.net/m0_47419053/article/details/127131665