c#程序开发案例课堂第9章习题解答-练习2-学生点名系统

运行效果

AfterRun.PNG
AfterRun.PNG

代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;//加上以下两个命名空间
using System.Collections;

namespace WindowsFormsApp2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }



        //没有用,不小心双击了那个控件
        private void label2_Click(object sender, EventArgs e)
        {

        }

        private void Form1_Load(object sender, EventArgs e)
        {          
            Bitmap bm = new Bitmap(@"C:\Users\Hab_L\Desktop\84.jpg"); //设置图片路径
            this.BackgroundImage = bm;//设置背景图片
            this.BackgroundImageLayout = ImageLayout.Stretch;//设置背景图片自动适应
        }

        private void button1_Click(object sender, EventArgs e)
        {
            StreamReader streamReader = new StreamReader(@"C:\Users\Hab_L\Desktop\name.txt", Encoding.Default);

            ArrayList al = new ArrayList();//建立动态数组
            Random r = new Random();//随机数
            while (streamReader.Peek() >= 0) //逐行读取文本文档
            {
                al.Add(streamReader.ReadLine());//将读取到的行写到数组中
            }

            int i = r.Next(0, al.Count); //定义随机数的范围
            label2.Text = al[i].ToString();
            //将读取到的随机数组值赋给label1.Text
        }
    }
}


注意的问题

这个文本文件的读取是按行读的,所以文本里面的姓名应该是一行一个人


Name.PNG

题外话

至于控件中的你没有看过的繁体字形,那是因为我自己安装了这些字体,所以会有这些选项,没有安装是没有的,老实用宋体和黑体吧哈哈哈哈哈哈

你可能感兴趣的:(c#程序开发案例课堂第9章习题解答-练习2-学生点名系统)