一个项目,一分收获;一个项目,一些资源。Ktv项目也是一样的,所以我想分享我的收获,让你们获得你需要的资源。 一. 那MyKTV点歌系统具体的功能有哪些呢?我们就来看看吧! 1.MyKTV前台功能: 01.歌星 ...
一个项目,一分收获;一个项目,一些资源。Ktv项目也是一样的,所以我想分享我的收获,让你们获得你需要的资源。
一. 那MyKTV点歌系统具体的功能有哪些呢?我们就来看看吧!
1.MyKTV前台功能:
01.歌星点歌 、拼音点歌 、数字点歌 、类型选择 、金榜排行
02.切歌 、点歌 、重唱和退出
2.MyKTV后台功能:
01.歌手管理 、歌曲管理 、设置资源路径
02.新增歌手、歌曲 ,查询歌手、歌曲信息,设置歌曲路径和退出
二. 功能已经概括的差不多了,就让我们一起来看看MyKTV的项目吧
1.首先就是展现KTV的主界面,让我们先了解一下那些功能
01.实现各个共功能的主代码:
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Draget='_blank'>wing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace MyKTVClient{ public partial class frmMain : Form { public frmMain() { InitializeComponent(); } //当前播放的歌曲 private Song song; // 退出系统 SqlConnection con = new SqlConnection(DBHelper.str); private void tsbtnExit_Click(object sender, EventArgs e) { Application.Exit(); } private void MainForm_Load(object sender, EventArgs e) { DBHelper.frm = this; // 加载时,运行播放窗体 // 启动计时器 this.tim.Start(); // 歌手照片路径 string sql = "select resource_path from resource_path where resource_id=1"; SqlCommand cmd = new SqlCommand(sql, con); // 歌手照片路径 con.Open(); KTVUtil.singerPhotoPath = cmd.ExecuteScalar().ToString(); // 歌曲路径 sql = "select resource_path from resource_path where resource_id=2"; cmd.CommandText = sql; KTVUtil.songPath = cmd.ExecuteScalar().ToString(); con.Close(); } //已点歌曲窗体 private void tsbtnOrdered_Click(object sender, EventArgs e) { frmOrderedSongList frm = new frmOrderedSongList(); frm.Show(); } // 重新播放当前歌曲 private void tsbtnAgain_Click(object sender, EventArgs e) { PlayList.PlayAgain(); PlaySong(); } // 切歌 private void tsbtnCut_Click(object sender, EventArgs e) { if (txtnextsong.Text=="") { MessageBox.Show("暂无已点歌曲"); } else { PlayList.CutSong(-1); } } // 服务 private void toolStripButton1_Click(object sender, EventArgs e) { MessageBox.Show("当前无服务!"); } //播放歌曲 private void PlaySong() { this.song = PlayList.GetPlayingSong(); // 获取当前要播放的歌曲 if (song != null) { this.song.SetSongPlayed(); // 将当前歌曲播放状态设为已播放 this.Winplaymedia.URL = KTVUtil.songPath + "\\" + this.song.SongURL; // 得到当前播放歌曲的路径 string urlls = KTVUtil.singerPhotoPath +"\\"+ this.song.Singerurl;//歌手图片 lblsongname.Text = this.song.Singername;//歌手名字 try { this.pblist.Image = Image.FromFile(urlls); } catch (Exception) { MessageBox.Show("暂无歌手图片"); ; } } } // 定时扫描歌曲列表,显示当前播放歌曲的名称 private void timer1_Tick(object sender, EventArgs e) { // 在文本框中显示当前播放的歌曲名字 this.txtplay.Text = PlayList.PlayingSongName(); this.txtnextsong.Text = PlayList.NextSongName(); if (this.song == null) { this.PlaySong(); } if (this.Winplaymedia.playState == WMPLib.WMPPlayState.wmppsStopped) { this.song = null; // 将歌曲设为空 PlayList.MoveOn(); } // 切歌 if (this.song != null && this.song.PlayState == SongPlayState.cut) { this.Winplaymedia.URL = ""; this.song = null; } } // 按歌手点歌 private void picSinger_Click(object sender, EventArgs e) { frmOrderBySinger frm = new frmOrderBySinger(); frm.Show(); } // 拼音点歌 private void picSongName_Click(object sender, EventArgs e) { frmOrderBySongName frm = new frmOrderBySongName(); frm.Show(); } // 分类点歌 private void picSongType_Click(object sender, EventArgs e) { frmOrderBySongType frm = new frmOrderBySongType(); frm.Show(); } // 排行榜点歌 private void picSongList_Click(object sender, EventArgs e) { frmSongList frm = new frmSongList(); string sql = "select song_id,song_name,singer_info.singer_name,song_url,singer_info.singer_photo_url from song_info inner join singer_info on song_info.singer_id=singer_info.singer_id order by song_play_count desc"; frm.Sql = sql; frm.Onform = FanhuiForm.Main; frm.Show(); } // 字数点歌 private void picWordCount_Click(object sender, EventArgs e) { frmOrderByWordCount frm = new frmOrderByWordCount(); frm.Show(); } private void frmMain_FormClosing(object sender, FormClosingEventArgs e) { //关闭应用 Application.Exit(); } //点击窗体移动 private Point mouseOffset; //记录鼠标指针的坐标 private bool isMouseDown = false; //记录鼠标按键是否按下 private void pnlTop_MouseDown(object sender, MouseEventArgs e) { int xOffset; int yOffset; if (e.Button == MouseButtons.Left) { xOffset = -e.X - SystemInformation.FrameBorderSize.Width; yOffset = -e.Y - SystemInformation.CaptionHeight - SystemInformation.FrameBorderSize.Height; mouseOffset = new Point(xOffset, yOffset); isMouseDown = true; } } private void pnlTop_MouseMove(object sender, MouseEventArgs e) { if (isMouseDown) { Point mousePos = Control.MousePosition; mousePos.Offset(mouseOffset.X + 5, mouseOffset.Y + 30); Location = mousePos; } } private void pnlTop_MouseUp(object sender, MouseEventArgs e) { // 修改鼠标状态isMouseDown的值 // 确保只有鼠标左键按下并移动时,才移动窗体 if (e.Button == MouseButtons.Left) { isMouseDown = false; } } private void pnlTop_Paint(object sender, PaintEventArgs e) { } }}
海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com
原标题:欢迎进入MyKTV前后台点歌系统展示
关键词:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。