本人学C#不是很久 不过很想自己写一个MP3播放器.. 希望大虾、大侠们提供些资料给我 有源码就最好了..
小弟在此谢过了.
小弟在此谢过了.
解决方案 »
- Windows Server 2008 R2 文件夹备份问题,请各位给思路
- 请教各位高手,谁能给解释一下这段代码吗?
- 关于数据库中自动添加递增字符串的问题
- 打开word文档,并写入数据,顶帖有分...
- 懂WPF和C#的高手请进,如何实现同一个listview中根据需要实现contextmenu的切换????!!!在线等~~~!!!
- 怎样校验ip地址??请各位大侠赐教
- 14018371是关于asp。net和c#的技术群 欢迎高手加入
- 这个问题怎么解决?Help Me
- 急,不好意思,一个小问题谢谢
- 强烈推荐http://www.uncj.net网站
- 窗口跟随鼠标 如何实现
- 重新提问下,关于数据库更新问题
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;namespace MyPlayer
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
//播放音乐
if (axWindowsMediaPlayer1.currentPlaylist.count > 0)
{
axWindowsMediaPlayer1.Ctlcontrols.play();
timer1.Enabled = true;
timer1.Start();
}
} private void button6_Click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
WMPLib.IWMPMedia pi = axWindowsMediaPlayer1.newMedia(openFileDialog1.FileName);
axWindowsMediaPlayer1.currentPlaylist.appendItem(pi);
listBox1.Items.Add(pi.sourceURL+"\t"+pi.durationString);
}
} private void button2_Click(object sender, EventArgs e)
{
//暂停
axWindowsMediaPlayer1.Ctlcontrols.pause();
timer1.Stop();
} private void button3_Click(object sender, EventArgs e)
{
//停止
axWindowsMediaPlayer1.Ctlcontrols.stop();
timer1.Stop();
trackBar1.Value = 0;
} private void button4_Click(object sender, EventArgs e)
{
//上一首
axWindowsMediaPlayer1.Ctlcontrols.previous();
} private void button5_Click(object sender, EventArgs e)
{
//下一首
axWindowsMediaPlayer1.Ctlcontrols.next();
} private void listBox1_DoubleClick(object sender, EventArgs e)
{
axWindowsMediaPlayer1.Ctlcontrols.currentItem = axWindowsMediaPlayer1.currentPlaylist.get_Item(listBox1.SelectedIndex);
axWindowsMediaPlayer1.Ctlcontrols.play();
timer1.Start();
} private void button7_Click(object sender, EventArgs e)
{ //清空播放列表
axWindowsMediaPlayer1.currentPlaylist.clear();
listBox1.Items.Clear();
timer1.Stop();
} private void timer1_Tick(object sender, EventArgs e)
{
//定时器,随时显示最新播放信息
label1.Text = axWindowsMediaPlayer1.Ctlcontrols.currentPositionString ;
trackBar1.Maximum = (int)axWindowsMediaPlayer1.currentMedia.duration;
trackBar1.Value = (int)axWindowsMediaPlayer1.Ctlcontrols.currentPosition; } private void trackBar1_Scroll(object sender, EventArgs e)
{
//拖动进度条时,从新的位置开始播放
axWindowsMediaPlayer1.Ctlcontrols.currentPosition = trackBar1.Value;
} private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{ }
}
}
第二个例子:http://www.rayfile.com/files/d3b0d10c-80c2-11de-aa15-0014221b798a/
全是源代码
如果使用WindowsAPI直接就可以播放了。使用方法,有些区别。
好处是不用加载Activex控件。