winform窗体应用程序,实现注册和登录功能
1.1.开发环境:Visual Studio 2019 + SQL Server 2012
1.2.winform基本窗体界面
样式设置就不上了,需要自己慢慢的设置,修改属性即可!
1.3.DBHelper类
DBHelper从字面上理解为“数据库帮助类”,在这里主要是进行winform窗体应用程序和数据库的数据交互。话不多说,我直接放在下面了
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data.SqlClient;
namespace WindowsFormsApp1
{
class DBHelper
{
public static string connstr = "server=.;database=V_Char;uid=sa;pwd=000000";
//创建数据库连接对象
public static SqlConnection conn;
public static void initconn()
{
conn = new SqlConnection(connstr);
conn.Open();
}
public static DataTable GetDataTable(string sqlstr)
{
//初始化连接
initconn();
//创建适配器
SqlDataAdapter sda = new SqlDataAdapter(sqlstr, conn);
//定义数据集
DataSet ds = new DataSet();
//填充数据
sda.Fill(ds);
//关闭
conn.Close();
//返回查询结果
return ds.Tables[0];
}
public static bool ExecuteNonQuery(string sqlstr)
{
//初始化连接
initconn();
//创建命令
SqlCommand comm = new SqlCommand(sqlstr, conn);
int n = comm.ExecuteNonQuery();
conn.Close();
if (n > 0)
{
return true;
}
else
{
return false;
}
}
}
}
记得导入一下命名空间
//导入命名空间
using System.Data;
using System.Data.SqlClient;
1.4.主要功能代码
登录按钮(其中小部分是播放的背景音乐代码)
private void button1_Click(object sender, EventArgs e) //登录
{
if (txtLonginld.Text=="管理员"&&txtPwd.Text=="123")
{
MessageBox.Show("欢迎您回来!");
}
else
{
string sql = string.Format("select * from UserInfo where Loginid='{0}' and LoginPwd='{1}'", txtLonginld.Text, txtPwd.Text);
DataTable dt = DBHelper.GetDataTable(sql);
if (txtLonginld.Text == "" || txtLonginld.Text == "用户名")
{
MessageBox.Show("用户名不能为空!");
}
else if (txtPwd.Text == "" || txtPwd.Text == "密码")
{
MessageBox.Show("密码不能为空");
}
else
{
if (dt.Rows.Count > 0)
{
one.Name = dt.DataSet.Tables[0].Rows[0][3].ToString();
Form3 form = new Form3(one);
form.Show();
Hide();
string sql1 = "select Duankou from UserInfo where id=3";
DataTable dt1 = DBHelper.GetDataTable(sql1);
if(dt1.DataSet.Tables[0].Rows[0][0].ToString() == "1")
{
string path = @"D:\常用文件\李三妹 - 会不会 (抖音热搜DJ版).wav"; //歌曲文件的路径 歌曲一定要是wav格式
SoundPlayer bgm = new SoundPlayer(path);
bgm.Play(); //播放
// bgm.stop();//停止 //一定要加if判断才写停止
if (dt.Rows.Count > 0)
{
bgm.Stop();
string sql2 = "update UserInfo set Duankou= Duankou-1 where id=3";
DBHelper.ExecuteNonQuery(sql2);
}
}
}
else
{
MessageBox.Show("您输入的账户名或密码不正确,原因可能是:\n1.用户名输入有误\n2.忘记密码\n3.未区分字母大小写\n4.未开启小键盘", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
}
}
注册按钮
private void button1_Click(object sender, EventArgs e)
{
string area;
if(txtName.Text == "" || textBox1.Text == "" || textBox2.Text == "" || textBox3.Text == "")
{
MessageBox.Show("信息输入不完整,请重新输入!");
}
else if(textBox2.Text != textBox3.Text)
{
MessageBox.Show("密码输入不一致,请重新输入!");
}
else
{
if (radioButton1.Checked)
{
area = "内陆";
}
else
{
area = "港澳台";
}
string sql = string.Format("insert into UserInfo(Loginid,LoginPwd,Name,Diqu) values('{0}','{1}','{2}','{3}')", textBox1.Text, textBox2.Text, txtName.Text, area);
DBHelper.ExecuteNonQuery(sql);
MessageBox.Show("注册成功!");
Close();
}
}
//跳转到注册界面
private void button2_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.Show();
}