我刚刚从C ++和Rad Studio移到了C#和Visual Studio,因为我可以看到更多的教程,并且可以在Internet上获得有关VC的帮助。但是..我有问题。
我知道在创建表格时(程序启动时)如何播放音乐。但是,如何停止使用普通TButton
播放音乐?
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace _01_21_2019
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Shown(object sender, EventArgs e)
{
// play an intro sound when a form is shown
WMPLib.WindowsMediaPlayer wplayer = new WMPLib.WindowsMediaPlayer();
wplayer.URL = "intro.mp3";
wplayer.controls.play();
}
private void button1_Click(object sender, EventArgs e)
{
wplayer.controls.stop(); // Here it is not working - "current context"
}
}
}
编译器说
错误CS0103在当前上下文中不存在名称'wplayer'“
我试图将wplayer.controls.stop()
移到play()
下方;而且有效。但是如何使用按钮停止音乐?
这是pastebin上的代码:
答案 0 :(得分:0)
您应该在函数外部实例化该对象,以便该对象可用于类实例。
您可能还想研究mvvm模式。在编写WPF和其他一些应用程序时非常有用。
public partial class Form1 : Form
{
WMPLib.WindowsMediaPlayer wplayer = new WMPLib.WindowsMediaPlayer();
public Form1()
{
InitializeComponent();
}
private void Form1_Shown(object sender, EventArgs e)
{
// play an intro sound when a form is shown
wplayer.URL = "intro.mp3";
wplayer.controls.play();
}
private void button1_Click(object sender, EventArgs e)
{
wplayer.controls.stop();
}
}