【问题标题】:Pause/Play button in vb 2010vb 2010 中的暂停/播放按钮
【发布时间】:2012-02-14 02:35:19
【问题描述】:

我是 stackoverflow 和编程世界的新手。我有一个我正在制作的基本程序,它将在后台播放一首歌曲。

我已经让那部分工作了,它会自动启动程序。

但是,我想要一个暂停,然后恢复音频的按钮。

(我试图避免使其成为媒体播放器并使用媒体播放器控件)歌曲被添加为资源。

My.Computer.Audio.Stop(阻止它。)

但是我怎样才能实现暂停,恢复呢?通过添加一个布尔值或什么?

(我希望暂停和恢复功能在同一个按钮内)

【问题讨论】:

  • Wpf 或 Winforms。您是想从上次中断的地方开始还是重新开始播放音频
  • @Mark Hall 我知道我无法使用相同的方法暂停恢复,但我仍然试图远离系统 Windows 媒体播放器。是否可以使用计时器方法? (如果没有其他办法,我会求助于 wmp,但是如果计算机没有 windows 媒体播放器怎么办?该功能仍然有效吗?)编辑:并且:从音频停止的地方开始。
  • 我开始给出的答案是使用 System.Windows.Media.MediaPlayer 但它是一个 WPF 类,我不相信它依赖于 Windows Media player 但我正在寻找跨度>
  • 所以我必须同时添加“用户控制 (wpf)”和 windows 媒体播放器?...我将使用 .wav 文件,但只需要一个按钮即可恢复和暂停。跨度>
  • 它内置在框架中。我看不出它在哪里依赖于 Windows Media Player。尽管关于如何使用它的文档在 MSDN 中非常稀少。就您的单键恢复和暂停而言,使用布尔变量来确定要处理的功能。回答我之前的问题你的应用是 Winform 还是 WPF 应用?

标签: .net vb.net visual-studio-2010 button


【解决方案1】:

我使用了反射器,而 Audio.Play 的内部实现使用了 SoundPlayer:

Public Sub Play(ByVal location As String, ByVal playMode As AudioPlayMode)
    Me.ValidateAudioPlayModeEnum(playMode, "playMode")
    Dim sound As New SoundPlayer(Me.ValidateFilename(location))
    Me.Play(sound, playMode)
End Sub

因此,除非您自己制作或从 SoundPlayer 类派生,否则您的选项似乎非常有限(参考音频方法没有暂停或恢复:http://msdn.microsoft.com/en-us/library/cf1shcah(v=vs.90).aspx)。

我建议放弃这个类,它不支持你想要的暂停/恢复方法。而是将时间集中在How can I pause an MP3 file using C#? - CodeProject Playing MP3s using MCI 上,或者研究如下方法:http://alvas.net/alvas.audio.aspx

【讨论】:

  • 好的,我会玩一下,谢谢你的信息。今晚我会回来总结我是如何做到的
  • 决定只使用 .play 和 .stop 功能。
猜你喜欢
  • 2019-06-25
  • 2014-12-05
  • 1970-01-01
  • 1970-01-01
  • 2023-03-19
  • 1970-01-01
  • 1970-01-01
  • 2016-08-13
  • 2014-08-21
相关资源
最近更新 更多