C#用timer实现背单词小程序
作者:、你我山前没相见 发布时间:2022-05-15 09:29:50
标签:C#,timer,背单词
本文实例为大家分享了C#用timer实现背单词小程序的具体代码,供大家参考,具体内容如下
看到网上有类似的教程视频实现单词本,于是自己敲了一个实现单词本功能的小项目,在实现期间,发现可以有两种版本来实现单词本功能,此处选择B版来为大家分享经验,同时留作自己日后复习巩固,有疏漏错误的地方,还望大神热心指出,在下感激不尽.
实现以下功能
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;
using System.Threading.Tasks;
using System.IO;
namespace WindowsFormsApp3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void form1_Load(object sender, EventArgs e)
{
}
int t1 = 0;//此处变量t1只定义一次变量,不随着timer而重复赋值
private void timer1_Tick(object sender, EventArgs e)
{
#region 从文件读取数据
/// <summary>
/// 使用StreamReader读取文本文件然后一行一行的输出 --
/// </summary>
List<string> english = new List<string>();//此处初始化两个集合
List<string> chinese = new List<string>();//将后面把每一行内容分割好的几部分分别存给集合
//List<string> yinbiao = new List<string>();
//创建变量line
//创建StreamReader
StreamReader sw = new StreamReader("E:\\College_Grade4.txt",Encoding.Default);//此处读取文件功能,Encoding.Default的作用是根据文本文件的编码来读取数据,一定不能丢,否则中文会乱码
string content = sw.ReadToEnd();//把文件读完存给content
string[] lines = content.Split('\n');//把读取好的文件分割为一行一行存给数组
for (int i = 0; i < lines.Length; i++)
{
string[] words = lines[i].Trim().Split('\t');//以水平制表符为基准将每一行分割成几部分
if (words.Length < 2)//如果分割的部分小于2个的话就不处理此行
continue;
english.Add(words[0]);//将第一部分和第二部分分别存给上述集合
chinese.Add(words[1]);
// yinbiao.Add(words[2]);
}
//将英文和翻译先后显示出来
if (t1 < lines.Length)
{
this.label1.Text = english[t1];
this.label2.Text = chinese[t1];
}
t1++;
#endregion
}
}
}
以下是实现效果
随timer控件执行一次一次出现后面的单词和意思
因为博客不支持上传文件
所以把我的文本文件内容截个图给大家
来源:https://blog.csdn.net/u011367578/article/details/82951985
0
投稿
猜你喜欢
- 注解@Validated和BindingResult对入参非空校验在项目当中少不了入参校验,服务器和浏览器互不信任,不能因为前端加入参判断了
- 本文实例讲述了C#实现最完整的文件和目录操作类。分享给大家供大家参考。具体如下:using System;using System.Text
- 一、特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对
- 页面元素定位是自动化中最重要的事情, selenium Webdriver 提供了很多种元素定位的方法。 测试人员应该熟练掌握各
- 前言最近在项目中使用到定时任务,之前一直都是使用Quartz 来实现,最近看Spring 基础发现其实Spring 提供 Spring Sc
- Java中throws和throw的区别讲解当然,你需要明白异常在Java中式以一个对象来看待。并且所有系统定义的编译和运行异常都可以由系统
- 本文实例为大家分享了C#汉字转换为拼音缩写的实现代码,供大家参考,具体内容如下using System;using System.Confi
- 1. 概述官方JavaDocsApi: javax.swing.JComboBoxJComboBox,下拉列表框。JComboBox以下列列
- 1. 为什么要更改SpringBoot运行方式?Tomcat Connector(连接器)有三种运行模式:bio nio aprbio(bl
- .c 源程序 ----- 编译 ----- 链接 ---- exe ----运行 -------->程序翻译环境和执行环境翻译环境:源
- Maven打包时指定启动类使用Maven打包的时候, 有时候需要指定启动类, 可如下操作!测试项目(结构如下):代码: com.xxx.Ma
- Java IO 转化流乱码引起转换流读取乱码读取电脑磁盘上的Java.txt文件内容,文件路径: e:\Java\Java.txt
- 目录一:spring读取配置或注解的过程二:spring的bean的生命周期2.1:实例化 Instantiation2.2:初始化3: 使
- 前言有人说Gradle使用groovy语言编写,简单,明了没像maven使用xml臃肿,其实我倒不觉得,我觉得maven挺好的,管理jar依
- 本文实例讲述了Java实现的Base64加密算法。分享给大家供大家参考,具体如下:一 算法实现1、JDK2、Commonc Codec3、B
- 一.线程池简介线程池的概念线程池就是首先创建一些线程,它们的集合称为线程池,使用线程池可以很好的提高性能,线程池在系统启动时既创建大量空闲的
- 前 言🍉 作者简介:半旧518,长跑型选手,立志坚持写10年博客,专注于java后端☕专栏简介:深入、全面、系统的介绍消息中间件🌰 文章简介
- 1. 抽象类关键字:abstract类:用来描述一类具体的事物抽象类:抽象的、模糊的、不具体的类在Java的普通类中是不允许多继承的,原因是
- 本文实例为大家分享了C#绘制饼状图和柱状图的具体代码,供大家参考,具体内容如下#代码如下:using System;using System
- C#过滤DataTable中的空数据和重复数据string sql = "select name,age from user&qu