国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

編程實現(xiàn)自動彈出和關閉CD托盤

2019-11-17 05:12:20
字體:
供稿:網(wǎng)友

  你肯定問過這個問題:我如何編程實現(xiàn)自動彈出和關閉CD托盤,而不必我用手按開關?好,本文就想談一談這個問題。

  你們一定對Delphi的TMediaPlayer組件比較熟悉,它是一個相當出色的多用途的多媒體組件,但是美中不足的是:假如CDROM光驅(qū)的倉門打開就不能自動關閉。而且不幸的是,TMediaPlayer的方法和屬性中沒有解決這個問題的辦法,所以我們不得不求助于Windows API,具體一些就是使用MMSystem.pas文件,另外一件需要注重的事是:我們可以單獨調(diào)用Windows API函數(shù),但是TMediaPlayer做了一些內(nèi)部處理,所以我們就不必擔心我們是否使用了組件。所以本例中使用了TMediaPlayer。

  第一步 新建一個工程,然后把一個TMediaPlayer 和 TButton拖到它上面。

  第二步 在窗體的uses語句中添加一個MMSystem聲明。

  第三步 設置TMediaPlayer的AutoOpen屬性為真,設置DeviceType屬性為dtCDAudio,除此之外我們還可以關閉EnabledButtons屬性的BTEject選項,因為我們將使用代碼來完成這個功能。

  第四步 在某些應用程序中,我還要使用到數(shù)據(jù)CD,所以我也要設置Visible屬性為假,讓我的按鈕做開關倉門的動作。

  第五步 就是在按鈕的Onclick 事件中添加下面的代碼:

PRocedure TForm1.Button2Click(Sender: TObject);
begin
with MediaPlayer1 do
if (MediaPlayer1.Mode = mpOpen) then
mciSendCommand(MediaPlayer1.DeviceID, MCI_SET, MCI_SET_DOOR_CLOSED, 0)
else
mciSendCommand(MediaPlayer1.DeviceID, MCI_SET, MCI_SET_DOOR_OPEN, 0);
end;

  注重,我們使用了mciSendCommand函數(shù),在Windows中,每個東西都是被消息控制,在設備控制方面,mciSnedCommand與windows的WndProc非常相似,都象是一個消息分發(fā)器,提供給設備了消息類型、消息標志、消息參數(shù)以及你所使用的方法。假如您想了解更具體的信息的話,請您參閱幫助文件。 更多文章 更多內(nèi)容請看java編程開發(fā)手冊專題,或

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 梁山县| 贞丰县| 尚志市| 桐乡市| 漾濞| 海口市| 灯塔市| 无棣县| 新龙县| 达日县| 博客| 永平县| 徐闻县| 阜阳市| 喀喇沁旗| 桓台县| 桑植县| 宁德市| 南宫市| 綦江县| 灵丘县| 广灵县| 阳曲县| 乡城县| 云梦县| 仁寿县| 万全县| 丰镇市| 梨树县| 商都县| 洱源县| 高陵县| 丰都县| 太和县| 长子县| 四子王旗| 濮阳市| 中宁县| 泽库县| 西贡区| 新营市|