仿造酷狗音乐最新版代码(含各种用户控件源码)
11111111111111111111111 核心代码: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.Runtime.InteropServices;using System.IO;using MediaControlLibrary;namespace MusicPlayer{ public partial class MainForm : Form { //public const Int32 AW_HOR_POSITIVE = 0x00000001; //public const Int32 AW_HOR_NEGATIVE = 0x00000002; //public const Int32 AW_VER_POSITIVE = 0x00000004; //public const Int32 AW_VER_NEGATIVE = 0x00000008; public const Int32 AW_CENTER = 0x00000010; //public const Int32 AW_HIDE = 0x00010000; //public const Int32 AW_ACTIVATE = 0x00020000; //public const Int32 AW_SLIDE = 0x00040000; //public const Int32 AW_BLEND = 0x00080000; public MainForm() { InitializeComponent(); //设置最大尺寸,防止全屏时遮挡任务栏 this.MaximumSize = Screen.PrimaryScreen.WorkingArea.Size; //启动动画 AnimateWindow(this.Handle, 100, 0x00000010);//开始窗体动画,中心展开 //歌词窗口 //lyricShow1.InitAndShowDesktopLyric(); for (int i = 0; i < 1; i ) { MediaList list = new MediaList("默认列表"); for (int j = 0; j < 10; j ) { MediaItem item = new MediaItem("歌曲" j, "00:00"); item.SecondContent = "111223"; list.SubItems.Add(item); } mediaContainer1.Lists.Add(list); MediaList list1 = new MediaList("新建列表"); mediaContainer1.Lists.Add(list1); } } /// /// 退出时动画效果 /// /// /// private void MainForm_FormClosed(object sender, FormClosedEventArgs e) { if (this.WindowState != FormWindowState.Minimized) { while (this.Height > 10) { this.Location = new Point(this.Location.X, this.Location.Y 15); this.Height -= 30; this.Opacity -= 0.01; } } Application.Exit(); } #region 播放控制与信息显示相关变量 MyMedia mySong = new MyMedia(); bool IsMute = false; bool IsStop = false; #endregion #region API和常量 [DllImport("user32.dll")] private static extern bool AnimateWindow(IntPtr hwnd, int dwTime, int dwFlags); [DllImport("user32.dll")] public static extern bool ReleaseCapture(); [DllImport("user32.dll")] private static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam); private const int WM_SYSCOMMAND = 0x0112; private const int SC_MOVE = 0xF010; private const int HTCAPTION = 0x0002; private const int WM_NCHITTEST = 0x84; private const int HTCLIENT = 0x1; private const int WM_NCLBUTTONDBLCLK = 0xA3;//鼠标双击标题栏消息 //改变窗体大小 public const int WMSZ_LEFT = 0xF001; public const int WMSZ_RIGHT = 0xF002; public const int WMSZ_TOP = 0xF003; public const int WMSZ_TOPLEFT = 0xF004; public const int WMSZ_TOPRIGHT = 0xF005; public const int WMSZ_BOTTOM = 0xF006; public const int WMSZ_BOTTOMLEFT = 0xF007; public const int WMSZ_BOTTOMRIGHT = 0xF008; #endregion #region 无边框窗口拖动及大小状态切换 protected override CreateParams CreateParams { get { const int WS_MINIMIZEBOX = 0x00020000; // Winuser.h中定义 CreateParams cp = base.CreateParams; cp.Style = cp.Style | WS_MINIMIZEBOX; // 允许最小化操作 return cp; } } private void tpnlMain_MouseDown(object sender, MouseEventArgs e) { //如果是顶部或底部的空栏 if ((e.Y > 0 && e.Y < 30) || (e.Y > this.Height - 40 && e.Y < this.Height)) { //按下的是鼠标左键,则拖动窗口 if (e.Button == MouseButtons.Left) { ReleaseCapture(); SendMessage(this.Handle, WM_SYSCOMMAND, SC_MOVE HTCAPTION, 0);//*********************调用移动无窗体控件函数 } //双击顶部标题栏切换窗口状态 if ((e.Y > 0 && e.Y < 30) && e.Button == MouseButtons.Left && e.Clicks == 2) { if (this.WindowState == FormWindowState.Normal) { SendMessage(this.Handle, 274, 61488, 0); return; } if (this.WindowState == FormWindowState.Maximized) { SendMessage(this.Handle, 274, 61728, 0); return; } } } //拉伸改变大小 if (e.Y>0&&e.Y
- 2014-06-07下载
- 积分:1