C#Spring音乐播放器之登录界面编程

  Spring音乐播放器,我们小组设计其启动时有一个登录界面,用户初次可以注册,输入用户名和密码,点击注册即将输入信息保存到register文本文件中;如果已有用户名,输入用户名和密码,点击登录,程序会将输入的用户名和密码与已有的用户信息进行比较,如果找到完全匹配的用户名和密码,则进入音乐播放界面;若不匹配,则弹出消息框:用户名或密码错误。

  首先建立一个登录界面窗口,添加button,label,和textbox,更改了窗体背景,如下图。

然后对注册和登录按钮进行消息响应编程。

C#编程内容主要涉及文件的的读写,以及判断,比较简单。

注意事项如下:

在textbox中输入用户名和密码,首次点击注册按钮,程序将textbox中的字符写入新建的Register.txt文档中,用户名和密码各一行;

注册时,若用户名或密码为空,则弹出消息框提示请填写用户名或密码;

注册时,若用户名重复,则提示用户名重复,不写入文档;

登录时,若用户名或密码为空,则弹出消息框提示请填写用户名或密码;

登录时,若用户名或密码错误,则弹出消息框提示用户名或密码错误;

默认生成的Register.txt在桌面,其后注册时,用户名和密码均写在前面注册的账号的下两行。

具体实现代码如下:

  1 using System;
  2 using System.Collections.Generic;
  3 using System.ComponentModel;
  4 using System.Data;
  5 using System.Drawing;
  6 using System.Linq;
  7 using System.Text;
  8 using System.Windows.Forms;
  9 using System.IO;
 10
 11 namespace Spring音乐播放器
 12 {
 13     public partial class 登录界面 : Form
 14     {
 15         public 登录界面()
 16         {
 17             InitializeComponent();
 18         }
 19         //注册
 20         private void register_Click(object sender, EventArgs e)
 21         {
 22             Boolean flag = false;//布尔变量
 23             string path = @"C:\Users\Administrator\Desktop\Register.txt";
 24
 25             //判断是否填写完整用户名和密码
 26             if (string.IsNullOrWhiteSpace(username.Text) || string.IsNullOrWhiteSpace(password.Text))
 27             {
 28                 MessageBox.Show("请填写用户名或密码");
 29                 return;
 30             }
 31
 32             if (!File.Exists(path))//如果不存在则建立一个文档
 33             {
 34                 // Create a file to write to.
 35                 using (StreamWriter sw = File.CreateText(path))
 36                 {
 37                     //一行用户名,一行密码
 38                     sw.WriteLine(this.username.Text);
 39                     sw.WriteLine(this.password.Text);
 40                     MessageBox.Show("注册成功!");
 41                     sw.Close();
 42                 }
 43             }
 44             else
 45             {
 46                 //判断是否用户名重复
 47                 StreamReader objReader = new StreamReader("C:/Users/Administrator/Desktop/Register.txt");
 48                 string sLine = "";
 49                 int i = 0;
 50                 while ((sLine = objReader.ReadLine()) != null)
 51                 {
 52                     i++;
 53                     if (this.username.Text == sLine && Convert.ToInt32(i) % 2 == 1)
 54                     {
 55                         MessageBox.Show("该用户名已被使用!");
 56                         flag = true;
 57                         break;
 58                     }
 59                 }
 60                 objReader.Close();
 61
 62                 if (flag == true)
 63                     return;
 64                 else
 65                     //在已有的文档中接着写
 66                     using (StreamWriter sw = File.AppendText(path))
 67                     {
 68                         sw.WriteLine(this.username.Text);
 69                         sw.WriteLine(this.password.Text);
 70                         MessageBox.Show("注册成功!");
 71                         sw.Close();
 72                     }
 73             }
 74         }
 75         //登录
 76         private void launch_Click(object sender, EventArgs e)
 77         {
 78             Boolean flag = false;
 79             string username = this.username.Text;
 80             string password = this.password.Text;
 81             if (string.IsNullOrWhiteSpace(username) || string.IsNullOrWhiteSpace(password))
 82             {
 83                 MessageBox.Show("请填写用户名或密码");
 84                 return;
 85             }
 86             StreamReader objReader = new StreamReader("C:/Users/Administrator/Desktop/Register.txt");
 87             string sLine = "";
 88             int i = 0;
 89             int n = 0;
 90             while ((sLine = objReader.ReadLine()) != null)
 91             {
 92                 i++;
 93                 if (username == sLine && Convert.ToInt32(i) % 2 == 1 )//用户名是在第奇数行
 94                     n = i+1;
 95                 if (n == i && password == sLine)//密码在对应的用户名的下一行
 96                 {
 97                     MessageBox.Show("登录成功!");
 98                     flag = true;
 99                     break;
100                 }
101             }
102             objReader.Close();
103             if(flag == false )
104                 MessageBox.Show("用户名或密码错误!");
105         }
106     }
107 }

实验截图如下:

注册与写入内容:

  

注册时用户名重复:

登录:

注册时未输入密码:

登录时密码错误:

注:

暂时还没有将登录界面与播放界面链接起来,即注册或登录后不跳转至播放界面;

用户名和密码的输入没做限制;

注册用户名的意义是准备在播放界面添加歌曲生成歌曲目录,与用户名对应,这样每个账号就有自己的歌单啦!

时间: 2024-10-14 10:08:42

C#Spring音乐播放器之登录界面编程的相关文章

软件工程之Spring音乐播放界面C#编写细节

由于小组成员已经完成软件的详细设计说明书,在这里只具体说明软件程序的细节编写,以免重复. 歌曲的播放采用VS自带的axWindowsMediaPlayer插件,所以程序中涉及到许多该插件的使用.Ctlcontrols属性是AxWindowsMediaPlayer的一个重要属性, 此控件中有许多常用成员.下面是常用的几个,除了4和5在该音乐播放器中不需要用到,其他几个方法均需要. (1) 方法play 用于播放多媒体文件,其格式为:窗体名.控件名.Ctlcontrols.play() 如: AxW

SE Springer小组《Spring音乐播放器》软件需求说明之四

4 运行环境规定 4.1设备 我们计划完成的音乐软件较小巧,功能并不复杂,在普通笔记本电脑中即可运行,并无特殊硬设备要求. 4.2支持软件 需要用到windows操作系统,用VS编写C/C++代码,还需要用到PostgreSQL数据库.测试支持软件拟采用国内免费软件测试工具AutoRunner. 4.3 接口 说明该软件同其他软件之间的接口.数据通信协议等. Spring音乐播放器没有开发API,有人机交互界面(UI). 数据通信协议(data communication protocols),

SE Springer小组之《Spring音乐播放器》可行性研究报告三、四

3 对现有系统的分析 由于本次可行性分析主要是建立在团队自行实现一个音乐软件的目标上,并不是在一个现有系统的基础上开发改进的新系统.因此这里将分析一款市面上已经存在的音乐软件(以下称为W音乐),并为之后开发“Spring音乐播放器”提供一定的参考. 3.1处理流程和数据流程 说明现有系统的基本的处理流程和数据流程.此流程可用图表即流程图的形式表示,并加以叙述. 图2 基本处理流程图 用户启动M音乐后,可以选择在网络音乐库中查找歌曲并下载,也可以从本地音乐库中查找想听的歌曲,然后进行播放.本地音乐

SE Springer小组之《Spring音乐播放器》需求分析说明书一

软件需求说明书 软件需求说明书的编制是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解, 使之成为整个开发工作的基础. 1 引言 1.1编写目的 使用户对该软件的初始规定有一个理解,也使软件开发者对该软件开发的目的.任务.需求及运行环境有一定的了解,为整个开发工作做好准备. 1.2背景 a.待开发的软件系统的名称:spring音乐播放器: b.本项目的任务提出者.开发者为宁牟明.曹乐平.莫雪萍.杨子鲲: 用户暂定为开发者自己或周围同学: C.spring音乐播放器软件系统要与本地的检

SE Springer小组之《Spring音乐播放器》可行性研究报告五、六

5 可选择的其他系统方案 曾经考虑过制作闹钟系统,但考虑到闹钟系统在电脑应用中极其不实用,所以此方案未通过. 6 投资及效益分析 6.1支出 本软件只用于完成课程学习要求,不用做商用,无基础设备等支出及不考虑后期维护问题. 6.1.1基本建设投资 a.房屋和设施:无固定场所,设备为组员各自的电脑: b. A DP设备:无: C.数据通讯设备:无: d.环境保护设备:无: e.安全与保密设备:无: f.ADP操作系统的和应用的软件:无: g.数据库管理软件:无. 6.1.2其他一次性支出 a.研究

音乐播放器之myeclipse项目

音乐播放器: 这个音乐播放器是用myeclipse打开的项目.假设有问题记得改掉文件的路径名.还有假设图片不显示也可能是图片的路径名不正确,如音乐无法播放也可能是路径名不正确.总之这个游戏有文件的引用,一旦文件找不到,程序不会挂,可是没结果. 注意:用myeclipse导入这个项目,就不会有问题. 假设还是有问题.请留言. 地址链接:点击打开链接

兼容IE7音乐播放器之jplayer的使用

首先列出为何要写这篇随笔的原因: 1:兼容IE7 2:音乐播放器 3:任意控制播放器 1: 最近做的网站需要兼容IE7,在此之前已经写好了关于音乐播放的插件,火狐,IE8以上,以及谷歌浏览器等都可以随意播放,但是IE7以及IE8浏览器却无法正常播放,真是恼火至极啊!网上收了一大箩筐音乐播放器都不满足我的要求,基本上都是基于XML配置文件式的,而我的网站需要动态播放音乐,控制音乐单曲循环,我自定义的音乐列表顺序播放等,因此不能满足我的要求,这些播放器要么是html5的要么是纯flash的(无法控制

android音乐播放器之在线播放功能的实现

转发请注明出处:http://blog.csdn.net/qq_28055429/article/details/51327171 前言:由于最近在做一个音乐播放器,需实现在线播放功能的实现,故而找了一些资料,看了别人的一些博客,现在终于可以实现了 需求:根据用户输入歌曲名+歌手名 返回:从百度音乐api查询,若有该曲则播放该曲,若无这里没做异常处理 一,前提解说: (1)百度音乐api提供一个接口地址: http://box.zhangmen.baidu.com/x?op=12&count=1

spring security使用自定义登录界面后,不能返回到之前的请求界面的问题

昨天因为集成spring security oauth2,所以对之前spring security的配置进行了一些修改,然后就导致登录后不能正确跳转回被拦截的页面,而是返回到localhost根目录. 开始以为是被oauth2拦截了导致出了问题,但是security的拦截器是优先起作用的,所以这不可能. 最后实在没法只有打断点调试找毛病(下图为spring security登录后重定向至拦截前访问的url的实现原理流程) 图片是在这里看到的https://blog.csdn.net/zy_coo