?? qsound.html
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- /home/reggie/tmp/qt-3.0-reggie-5401/qt-x11-commercial-3.0.5/src/kernel/qsound.cpp:97 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="Translator" content="Hackerjun">
<meta name="Qt zh_CN Documents Website" content="http://www.qiliang.net/qt">
<title>QSound類</title>
<style type="text/css"><!--
h3.fn,span.fn { margin-left: 1cm; text-indent: -1cm; }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
body { background: #ffffff; color: black; font-family: "Times New Roman" }
--></style>
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr bgcolor="#E5E5E5">
<td valign=center>
<a href="index.html">
<font color="#004faf">主頁</font></a>
| <a href="classes.html">
<font color="#004faf">所有的類</font></a>
| <a href="mainclasses.html">
<font color="#004faf">主要的類</font></a>
| <a href="annotated.html">
<font color="#004faf">注釋的類</font></a>
| <a href="groups.html">
<font color="#004faf">分組的類</font></a>
| <a href="functions.html">
<font color="#004faf">函數</font></a>
</td>
<td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table>
<h1 align=center>QSound類參考</h1>
<p>QSound提供對平臺音頻設備的訪問。
<a href="#details">詳情請見……</a>
<p><tt>#include <<a href="qsound-h.html">qsound.h</a>></tt>
<p>繼承了<a href="qobject.html">QObject</a>。
<p><a href="qsound-members.html">所有成員函數的列表。</a>
<h2>公有成員</h2>
<ul>
<li><div class=fn><a href="#QSound"><b>QSound</b></a> ( const QString & filename, QObject * parent = 0, const char * name = 0 )</div></li>
<li><div class=fn><a href="#~QSound"><b>~QSound</b></a> ()</div></li>
<li><div class=fn>int <a href="#loops"><b>loops</b></a> () const</div></li>
<li><div class=fn>int <a href="#loopsRemaining"><b>loopsRemaining</b></a> () const</div></li>
<li><div class=fn>void <a href="#setLoops"><b>setLoops</b></a> ( int l )</div></li>
<li><div class=fn>QString <a href="#fileName"><b>fileName</b></a> () const</div></li>
<li><div class=fn>bool <a href="#isFinished"><b>isFinished</b></a> () const</div></li>
</ul>
<h2>公有槽</h2>
<ul>
<li><div class=fn>void <a href="#play-2"><b>play</b></a> ()</div></li>
<li><div class=fn>void <a href="#stop"><b>stop</b></a> ()</div></li>
</ul>
<h2>靜態(tài)公有成員</h2>
<ul>
<li><div class=fn>bool <a href="#isAvailable"><b>isAvailable</b></a> ()</div></li>
<li><div class=fn>void <a href="#play"><b>play</b></a> ( const QString & filename )</div></li>
<li><div class=fn>bool <a href="#available"><b>available</b></a> ()</div></li>
</ul>
<hr><a name="details"></a><h2>詳細描述</h2>
QSound提供對平臺音頻設備的訪問。
<p> Qt提供了在大多數GUI應用程序中通常都需要的操作:異步播放聲音文件。這用一個單呼叫就能簡單的完成:
<pre>
QSound::<a href="#play">play</a>("mysounds/bells.wav");
</pre>
<p> 第二個API是被用來根據一個聲音文件創(chuàng)建一個QSound對象并且隨后就播放它:
<pre>
QSound bells("mysounds/bells.wav");
bells.<a href="#play">play</a>();
</pre>
<p> 用以上第二種方式播放聲音雖然也許會消耗更多的內存,但依靠底層平臺的音頻設備,比起第一種方式播放聲音起來更直接。
<p> 在微軟Windows下使用的底層多媒系統(tǒng),僅支持WAVE格式的聲音文件。
<p> 在X11下有效的使用了<a href="ftp://ftp.x.org/contrib/audio/nas/">網絡音頻系統(tǒng)</a>,另外所有的操作工作都在默默的進行著。NAS支持WAVE和AU文件。
<p> 有趣的是,在蘋果機上,我們使用QT(<a href="http://quicktime.apple.com">QuickTime</a>)來播放聲音,這意思就是說所有的QuickTime格式被Qt/Mac所支持。
<p> 在Qt/Embedded中,使用了內建混聲服務器,可以直接訪問<tt>/dev/dsp</tt>。其僅僅可以支持WAVE格式。
<p> 用<a href="#isAvailable">QSound::isAvailable</a>()可以測試支持的聲音。
<p>也可以參考<a href="multimedia.html">多媒體類</a>。
<hr><h2>成員函數文檔</h2>
<h3 class=fn><a name="QSound"></a>QSound::QSound ( const <a href="qstring.html">QString</a> & filename, <a href="qobject.html">QObject</a> * parent = 0, const char * name = 0 )
</h3>
構造一個QSound能夠快速的通過一個名為<em>filename</em>的文件來播放聲音。
<p> 這也許會比靜態(tài)函數<tt>play</tt>使用更多的內存。
<p> 父類<em>parent</em>和名稱<em>name</em>的參數(默認為0)被傳遞給了<a href="qobject.html">QObject</a>的構造函數。
<h3 class=fn><a name="~QSound"></a>QSound::~QSound ()
</h3>
銷毀聲音對象。
<h3 class=fn>bool <a name="available"></a>QSound::available ()<tt> [靜態(tài)]</tt>
</h3>
<p> 如果可以有效的支持就返回真,否則返回假。
<h3 class=fn><a href="qstring.html">QString</a> <a name="fileName"></a>QSound::fileName () const
</h3>
返回與聲音有關的文件名。
<h3 class=fn>bool <a name="isAvailable"></a>QSound::isAvailable ()<tt> [靜態(tài)]</tt>
</h3>
如果在該平臺上存在聲音設備便返回真,否則返回假。應用程序要么當聲音是十分重要時選擇報告用戶要么就默默的操作而不麻煩用戶了
<p> 如果沒有有效的聲音,所有的QSound操作工作安靜且快速。
<h3 class=fn>bool <a name="isFinished"></a>QSound::isFinished () const
</h3>
當聲音播放完成時返回真,否則返回假。
<h3 class=fn>int <a name="loops"></a>QSound::loops () const
</h3>
返回聲音將播放的次數。
<h3 class=fn>int <a name="loopsRemaining"></a>QSound::loopsRemaining () const
</h3>
返回聲音將循環(huán)的次數。該值在每次聲音循環(huán)后會減少。
<p> 該函數在窗口下不支持并且總是返回循環(huán)的總數。
<h3 class=fn>void <a name="play"></a>QSound::play ( const <a href="qstring.html">QString</a> & filename )<tt> [靜態(tài)]</tt>
</h3>
播放一個叫做<em>filename</em>的文件中的聲音。
<p>實例:<a href="sound-example.html#x2660">sound/sound.cpp</a>。
<h3 class=fn>void <a name="play-2"></a>QSound::play ()<tt> [槽]</tt>
</h3>
這是一個重載成員函數,提供了方便。它的行為基本上和上面的函數相同。
<p> 開啟聲音播放。該數數立即返回。依靠平臺的音頻設備,其它的聲音也許被停止,也許被新的聲音混合。
<p> 在任何時候聲音可以再次播放,可能混合或者替代先播放的聲音。
<h3 class=fn>void <a name="setLoops"></a>QSound::setLoops ( int l )
</h3>
當它播放時設置聲音重復一次。超過-1的值也許會引起聲音的死循環(huán)。
<p> 在Windows中, 不同于1的循環(huán)次數的聲音將總是死循環(huán)。
<p> <p>也可以參考<a href="#loops">loops</a>()。
<h3 class=fn>void <a name="stop"></a>QSound::stop ()<tt> [槽]</tt>
</h3>
停止聲音播放。
<p> <p>也可以參考<a href="#play">play</a>()。
<!-- eof -->
<hr><p>
這個文件是<a href="index.html">Qt工具包</a>一部分。
版權所有 © 1995-2002
<a href="http://www.trolltech.com/">Trolltech</a>。保留所有權利。
<p><address><hr><div align=center>
<table width=100% cellspacing=0 border=0><tr>
<td>Copyright © 2002
<a href="http://www.trolltech.com">Trolltech</a>
<td><a href="http://www.trolltech.com/trademarks.html">Trademarks</a>
<td><a href="zh_CN.html">譯者:hackerjun</a>
<td align=right><div align=right>Qt 3.0.5版</div>
</table></div></address></body>
</html>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -