当前位置: 首页 > news >正文

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

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

  • 实验内容:Windows 窗体程序
  • 一、实验目的及要求
  • 二、实验环境
  • 三、实验内容与步骤
    • 一、设计简单的计算器
    • 3.1、实验内容
    • 3.2、实验步骤
    • 二、设计选购计算器配置的应用程序
    • 3.1、实验内容
    • 3.2、实验步骤
  • 四、实验总结

实验内容: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);
            }
        }
    }
}
  • 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);
        }
    }
}
  • 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("除数不能为零!");

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

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

在这里插入图片描述

相关文章:

  • MySql主从同步
  • java基于springboot+Vue+nodejs的高校运动会报名管理系统 element
  • 单链表❀数据结构
  • Linux——孤儿进程|进程的优先级 用top命令去修改优先级 其他概念 环境变量 PATH 获取环境变量
  • Linux系统编程-网络基础(四)-协议03:数据包封装【以太网(Mac)帧:最大值1500字节称为以太网的MTU(最大传输单元),不包括帧报头长度】
  • 一次诡异的numpy数组越界访问
  • cmd炫技小方法
  • kafka搭建单机开发教程
  • 如果你需要用Python搞个二维码,那应该收藏这篇博客
  • Linux权限的认识
  • 【JavaScript】五个常用功能/案例:判断特定结尾字符串 | 获取指定字符串 | 颜色字符串转换 | 字符串转驼峰格式 | 简易购物车
  • Kotlin 字符串与空值判断
  • 【NLP开发】Python实现聊天机器人(ALICE)
  • 【题解】同济线代习题二 8.1
  • 【C语言】五分钟彻底搞定字符串
  • [译]CSS 居中(Center)方法大合集
  • Angular 4.x 动态创建组件
  • ESLint简单操作
  • JAVA SE 6 GC调优笔记
  • JavaScript标准库系列——Math对象和Date对象(二)
  • JavaScript异步流程控制的前世今生
  • JavaScript中的对象个人分享
  • jdbc就是这么简单
  • LeetCode算法系列_0891_子序列宽度之和
  • Linux gpio口使用方法
  • Python十分钟制作属于你自己的个性logo
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • WordPress 获取当前文章下的所有附件/获取指定ID文章的附件(图片、文件、视频)...
  • 番外篇1:在Windows环境下安装JDK
  • - 概述 - 《设计模式(极简c++版)》
  • 工程优化暨babel升级小记
  • 构建二叉树进行数值数组的去重及优化
  • 面试总结JavaScript篇
  • 前端代码风格自动化系列(二)之Commitlint
  • 什么软件可以提取视频中的音频制作成手机铃声
  • 使用common-codec进行md5加密
  • 7行Python代码的人脸识别
  • Redis4.x新特性 -- 萌萌的MEMORY DOCTOR
  • ​如何防止网络攻击?
  • ###51单片机学习(1)-----单片机烧录软件的使用,以及如何建立一个工程项目
  • #[Composer学习笔记]Part1:安装composer并通过composer创建一个项目
  • #单片机(TB6600驱动42步进电机)
  • $NOIp2018$劝退记
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (1)STL算法之遍历容器
  • (js)循环条件满足时终止循环
  • (PHP)设置修改 Apache 文件根目录 (Document Root)(转帖)
  • (差分)胡桃爱原石
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (附源码)springboot码头作业管理系统 毕业设计 341654
  • (附源码)基于ssm的模具配件账单管理系统 毕业设计 081848
  • (七)微服务分布式云架构spring cloud - common-service 项目构建过程
  • (算法)N皇后问题
  • (一)appium-desktop定位元素原理
  • (一)ClickHouse 中的 `MaterializedMySQL` 数据库引擎的使用方法、设置、特性和限制。