随机点名功能

随机点名功能

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:Visual Studio 2015

作者:朱海恩

撰写时间:2019年8月02日

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

随机抽人点名软件功能很简单,就是随机点名,已经点过的人名,还参与下次点名(不去重复)。主要侧重于功能实现,界面没有美化,代码也写得很随意,大概知识点有:产生随机数等。

随机点名器:

1、存储所有学生姓名,添加

功能描述:

1、获取班级名单的文件路径

2、随机生成一个学生

大概的流程:

  1. 声明一个字符串来获取班级名单的文件路径
  2. 实例化一个伪随机数生成器类
  3. 读取路径为文本文件的文本内容到数组,一行为一个成员,所以不用分割了
  4. 标签文本获取随机数对应到的人名

XAML页面:

XAML页面的设置可以根据自己想要的来设计。我这里就简单的设计了一下,就给了一张图片做背景图,还有一个按钮和文本框。代码如下:

<Image  Source="/Images/573fc5be7d65c.jpg"

Stretch="Fill">

</Image>

<TextBox  Name="lb_name"

Background="LightSkyBlue"

Opacity="0.5"

Width="250"

Height="60"

FontSize="20"

FontWeight="Black"

FontFamily="Vivaldi"

VerticalContentAlignment="Center"

HorizontalContentAlignment="Center"

Margin="260,189,283.6,171">

</TextBox>

<Button Content="随机按钮"

Width="100"

Height="50"

FontSize="20"

Background="SkyBlue"

FontWeight="Black"

Click="Button_Click"

Margin="336,307,357.6,63">

</Button>

 

C#代码如下:

private void Button_Click(object sender, RoutedEventArgs e)

{

//获取程序运行目录下的NAME.TXT文件路径

string path = Directory.GetCurrentDirectory() + "\\name.txt";

//实例化一个伪随机数生成器类.

Random rand = new Random(System.Guid.NewGuid().GetHashCode());

//读取路径为path文本文件的文本内容到数组.一行为一个成员所以不用分割了.

//ReadAllLines方法默认采用UTF8编码

string[] str_nameText = File.ReadAllLines(path);

//标签文本为取随机数对应到人名.

lb_name.Text = str_nameText[rand.Next(0, str_nameText.Length)];

}

最终界面效果图:

 

注意点:

  1. 读取文件到TextBox时出现中文乱码。怎么办?

解决方法:

(1)将文本文件保存为UTF-8编码

(2)将文本文件保存为ANSI编码(这是Windows文本文件默认的编码)

2、未能找到文件,问题如下图所示:

解决方法:

在创建文件名的时候,不要给后缀,比如文件名为“name.txt”,那么我们可以把后缀去掉,改成为“name”。

这种随机点名系统有点简单,但是实用。

 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值