【C#】设计一个选购计算机配置的应用程序

文章目录

    • [1. 创建新的 Windows Forms 应用程序项目](#1. 创建新的 Windows Forms 应用程序项目)
    • [2. 设计界面](#2. 设计界面)
      • [2.1 添加控件和设置属性](#2.1 添加控件和设置属性)
    • [3. 编写事件处理代码](#3. 编写事件处理代码)
    • [4. 运行和测试应用程序](#4. 运行和测试应用程序)

1. 创建新的 Windows Forms 应用程序项目

  1. 打开 Visual Studio。
  2. 选择"创建新项目"。
  3. 在项目类型中选择"Windows Forms 应用程序"(确保选择的是 C#)。
  4. 命名您的项目(例如:ComputerConfigurator)。
  5. 选择项目保存的位置。
  6. 点击"创建"。

2. 设计界面

在 Visual Studio 的设计视图中,您将使用工具箱(Toolbox)来添加和配置控件。

2.1 添加控件和设置属性

  1. 添加 Label 控件

    • 从工具箱中拖动一个 Label 控件到窗体上。
    • 设置 Label 的 Text 属性为"电脑品牌:"。
  2. 添加 ComboBox 控件

    • 从工具箱中拖动一个 ComboBox 控件到窗体上。
    • 设置 ComboBox 的 DropDownStyle 属性为"DropDownList",这样它就是一个下拉列表。
    • 右键点击 ComboBox,选择"属性",然后在"Items"属性中添加内存选项:"方正"、"联想"、"Dell"、"兼容机"。
  3. 添加3个 groupbox 控件

    • 为groupbox1和groupbox2中添加radioButton控件是单选的按钮
    • groupbox3中添加checkbox控件时复选的按钮
  4. 添加 listBox 控件

    • 用于存放选择后提交按钮展示结果
  5. 添加 Button 控件

    • 拖动一个 Button 控件到窗体上。
    • 设置 Button 的 Text 属性为"确定"。

3. 编写事件处理代码

双击"确定"按钮,Visual Studio 会自动生成按钮的点击事件处理程序框架。在其中添加以下代码:

csharp 复制代码
private void button1_Click(object sender, EventArgs e)
        {
            // 清空listBox2,准备添加新的选中项
            listBox2.Items.Clear();

            // 检查comboBox1中是否有选中的项
            if (comboBox1.SelectedItem != null)
            {
                // 将选中的项添加到listBox2中
                listBox2.Items.Add(comboBox1.SelectedItem.ToString());
            }

            // 遍历groupBox1中的所有控件
            foreach (Control control in groupBox1.Controls)
            {
                // 检查控件是否是RadioButton,并且是否被选中
                if (control is RadioButton radioButton && radioButton.Checked)
                {
                    // 如果是选中的RadioButton,将其文本添加到listBox2
                    listBox2.Items.Add(radioButton.Text);
                    break; // 如果只有一个选项应该是被选中的,找到后就可以退出循环
                }
            }

            // 遍历groupBox2中的所有控件
            foreach (Control control in groupBox2.Controls)
            {
                // 检查控件是否是RadioButton,并且是否被选中
                if (control is RadioButton radioButton && radioButton.Checked)
                {
                    // 如果是选中的RadioButton,将其文本添加到listBox2
                    listBox2.Items.Add(radioButton.Text);
                    break; // 如果只有一个选项应该是被选中的,找到后就可以退出循环
                }
            }

            // 遍历groupBox3中的所有控件
            foreach (Control control in groupBox3.Controls)
            {
                // 检查控件是否是CheckBox,并且是否被选中
                if (control is CheckBox checkBox && checkBox.Checked)
                {
                    // 如果是选中的CheckBox,将其文本添加到listBox2
                    listBox2.Items.Add(checkBox.Text);
                }
            }
        }

需要在窗体上添加一个 ListBox 控件(名为 listBox2)来显示选中的配置。

4. 运行和测试应用程序

相关推荐
wuyk55518 分钟前
18.Kruskal 算法:用最短的边连成一张网
开发语言·算法·图论
Evand J18 分钟前
【MATLAB例程,图像降噪7】高斯加权滑动窗口滤波,用于图像降噪,带质量评价,附代码下载链接
开发语言·图像处理·matlab·滑动窗口·滤波·降噪·图像滤波
十年一梦惊觉醒28 分钟前
快手视频发布助手,全自动视频发布带货工具
开发语言·前端·javascript
Java后端的Ai之路28 分钟前
一文搞懂 GitHub Actions-CICD
开发语言·大模型·github·cicd·action
码匠许师傅31 分钟前
【C++三方组件】开篇总论:为什么需要以及如何选型?
开发语言·c++
cvby1 小时前
C++11--右值引用和移动语义
开发语言·c++
en.en..1 小时前
TCP/UDP 收发流程(网络字节序---函数讲解)
开发语言·php
名字还没想好☜1 小时前
Go 用 json.Decoder 流式解析大 JSON:边读边处理不爆内存
开发语言·后端·golang·go·json
xiangyun611 小时前
【408数据结构 03】线性表与顺序表:C++手写SeqList
开发语言·数据结构·c++
Lsir10110_1 小时前
从按钮“点不动“讲起——深入理解 Qt 信号槽机制
开发语言·qt·信号处理