您的位置:首页 > 编程语言 > Java开发

第四篇——Spring音乐登录界面设计及实现(C#)

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

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



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

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

注意事项如下:

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

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

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

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

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

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

具体实现代码如下:

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.IO;

namespace Spring音乐播放器
{
public partial class 登录界面 : Form
{
public 登录界面()
{
InitializeComponent();
}
//注册
private void register_Click(object sender, EventArgs e)
{
Boolean flag = false;//布尔变量
string path = @"C:\Users\Administrator\Desktop\Register.txt";

//判断是否填写完整用户名和密码
if (string.IsNullOrWhiteSpace(username.Text) || string.IsNullOrWhiteSpace(password.Text))
{
MessageBox.Show("请填写用户名或密码");
return;
}

if (!File.Exists(path))//如果不存在则建立一个文档
{
// Create a file to write to.
using (StreamWriter sw = File.CreateText(path))
{
//一行用户名,一行密码
sw.WriteLine(this.username.Text);
sw.WriteLine(this.password.Text);
MessageBox.Show("注册成功!");
sw.Close();
}
}
else
{
//判断是否用户名重复
StreamReader objReader = new StreamReader("C:/Users/Administrator/Desktop/Register.txt");
string sLine = "";
int i = 0;
while ((sLine = objReader.ReadLine()) != null)
{
i++;
if (this.username.Text == sLine && Convert.ToInt32(i) % 2 == 1)
{
MessageBox.Show("该用户名已被使用!");
flag = true;
break;
}
}
objReader.Close();

if (flag == true)
return;
else
//在已有的文档中接着写
using (StreamWriter sw = File.AppendText(path))
{
sw.WriteLine(this.username.Text);
sw.WriteLine(this.password.Text);
MessageBox.Show("注册成功!");
sw.Close();
}
}
}
//登录
private void launch_Click(object sender, EventArgs e)
{
Boolean flag = false;
string username = this.username.Text;
string password = this.password.Text;
if (string.IsNullOrWhiteSpace(username) || string.IsNullOrWhiteSpace(password))
{
MessageBox.Show("请填写用户名或密码");
return;
}
StreamReader objReader = new StreamReader("C:/Users/Administrator/Desktop/Register.txt");
string sLine = "";
int i = 0;
int n = 0;
while ((sLine = objReader.ReadLine()) != null)
{
i++;
if (username == sLine && Convert.ToInt32(i) % 2 == 1 )//用户名是在第奇数行
n = i+1;
if (n == i && password == sLine)//密码在对应的用户名的下一行
{
MessageBox.Show("登录成功!");
flag = true;
break;
}
}
objReader.Close();
if(flag == false )
MessageBox.Show("用户名或密码错误!");
}
}
}


实验截图如下:

注册与写入内容:





注册时用户名重复:



登录:



注册时未输入密码:



登录时密码错误:



注:

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

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

注册用户名的意义是准备在播放界面添加歌曲生成歌曲目录,与用户名对应,这样每个账号就有自己的歌单啦!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: