MFC音樂播放器傻瓜教程_第1頁
MFC音樂播放器傻瓜教程_第2頁
MFC音樂播放器傻瓜教程_第3頁
MFC音樂播放器傻瓜教程_第4頁
MFC音樂播放器傻瓜教程_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 代碼下載地址1、建立工程21、建立一個(gè)MFC工程,命名為Tao_Music32、選擇為基本對話框33、包含Windows Sockts44、使用靜態(tài)鏈接庫方便一會(huì)直接生成的exe文件單獨(dú)可以發(fā)布52、 搭建界面51、 拖入控件:52、 控件拖入并擺好63、 控件屬性設(shè)置:73、 寫代碼實(shí)現(xiàn)功能151、變量綁定:152、加入圖片資源163、新建mp3類:174、修改Tao_MusicDlg.h205、修改Tao_Music.cpp216、功能實(shí)現(xiàn):327、加一個(gè)TImer消息使時(shí)間跑起來!398、給音量控制滑塊加消息,使音量控制實(shí)現(xiàn)42編譯運(yùn)行完工!431、建立工程1、建立一個(gè)MFC工程,命名

2、為Tao_Music2、選擇為基本對話框3、包含Windows Sockts因?yàn)橐镁W(wǎng)絡(luò)功能4、使用靜態(tài)鏈接庫方便一會(huì)直接生成的exe文件單獨(dú)可以發(fā)布2、 搭建界面1、 拖入控件:拖入7個(gè)用于播放控制的button,一個(gè)picture控件,一個(gè)控制音量的滑塊。一個(gè)Group Box用于盛放搜索功能各個(gè)控件及Group Box中2個(gè)靜態(tài)文本,2個(gè)可編輯文本,一個(gè)搜索按鈕。最下面的是一個(gè)List Control用于顯示歌曲的。最終效果如下:2、 控件拖入并擺好3、 控件屬性設(shè)置:選中Button1右鍵選擇屬性,彈出:將其改為:相同的道理將音樂控制的7個(gè)按鈕和搜索按鈕的Styles和Extended

3、 Styles都設(shè)置成相同的風(fēng)格。Button2-8的General屬性依次為:【注意大小寫】相應(yīng)的這里picture控件的屬性為:音量滑塊的屬性為:Group Box的屬性為:2個(gè)靜態(tài)文本的屬性只要改General就行啦:2個(gè)文本編輯框也只要改General就行:最后是list control控件的屬性:好啦,最終的效果就是這樣的:前面這么啰嗦大家千萬別弄錯(cuò)啦!接下來就是寫代碼啦!3、 寫代碼實(shí)現(xiàn)功能1、變量綁定:查看->建立類向?qū)?>Member Variables將其設(shè)置為:【雙擊對應(yīng)藍(lán)條即出現(xiàn)設(shè)置對話框】最后別忘點(diǎn)確定!2、加入圖片資源【首先用格式工廠轉(zhuǎn)換出32X32的24

4、張bmp圖片,放入工程文件的res文件中->進(jìn)入Resource界面->右鍵Tao_Music resources->insert->彈出的對話框點(diǎn)擊導(dǎo)入然后將你的24張bmp圖片一個(gè)一個(gè)導(dǎo)入,注意這里最多每次導(dǎo)入8個(gè),要分批導(dǎo)入!導(dǎo)入后的ID為IDB_BITMAP1-IDB_BITMAP24】3、新建mp3類:【插入->新建類】/mp3.h/音樂播放控制類#include "mmsystem.h"/必須同時(shí)引入#pragma comment(lib,"Winmm.lib")class mp3 public:mp3();vi

5、rtual mp3(); HWND m_hWnd;/3個(gè)變量DWORD DeviceID; MCI_OPEN_PARMS mciopenparms; void Load(HWND hwnd,CString Strfilepath);DWORD getinformation(DWORD item);void Play();void Pause();void resum();void Stop();DWORD Setvolumn(DWORD vol);/mp3.cpp#include "StdAfx.h"#include "mp3.h"#include &q

6、uot;Digitalv.h" /-mp3:mp3()/-mp3:mp3()/-/加載函數(shù)/-void mp3:Load(HWND hwnd,CString Strfilepath)/MessageBox(hwnd,Strfilepath,"43",MB_ICONHAND);m_hWnd=hwnd;mciSendCommand(DeviceID,MCI_CLOSE,0,0);/在加載文件前先清空上一次播放的設(shè)備mciopenparms.lpstrElementName=Strfilepath;/將音樂文件路徑傳給設(shè)備DWORD dwReturn;if (dwRet

7、urn=mciSendCommand(NULL,MCI_OPEN,MCI_OPEN_ELEMENT|MCI_WAIT,(DWORD)(LPVOID)&mciopenparms)/如果打開文件失敗,則將出錯(cuò)信息儲(chǔ)存在buffer,并顯示出錯(cuò)警告char buffer256; mciGetErrorString(dwReturn,buffer,256);/MessageBox(hwnd,buffer,"HeHe,You Are Wrong!",MB_ICONHAND|MB_ICONERROR|MB_ICONSTOP);/打開文件成功就關(guān)聯(lián)文件到設(shè)備DeviceID=mc

8、iopenparms.wDeviceID;/-DWORD mp3:getinformation(DWORD item)MCI_STATUS_PARMS mcistatusparms;mcistatusparms.dwItem=item;mcistatusparms.dwReturn=0;mciSendCommand(DeviceID,MCI_STATUS,MCI_STATUS_ITEM,(DWORD)&mcistatusparms);return mcistatusparms.dwReturn; /-/播放函數(shù)/-void mp3:Play()MCI_PLAY_PARMS mcipla

9、yparms;mciplayparms.dwCallback=(DWORD)m_hWnd;mciplayparms.dwFrom=0;/每次播放都是從0開始播放mciSendCommand(DeviceID,MCI_PLAY,MCI_FROM|MCI_NOTIFY,(DWORD)(LPVOID)&mciplayparms);/-/暫停/-void mp3:Pause()mciSendCommand(DeviceID,MCI_PAUSE,0,0);/-/重播/-void mp3:resum()mciSendCommand(DeviceID,MCI_RESUME,0,0);/-/停止/-v

10、oid mp3:Stop()mciSendCommand(DeviceID,MCI_STOP,0,0);mciSendCommand(DeviceID,MCI_CLOSE,0,0);/當(dāng)點(diǎn)擊停止按鈕時(shí),將所有的信息都清除掉/-/設(shè)置音量/-DWORD mp3:Setvolumn(DWORD vol)MCI_DGV_SETAUDIO_PARMS mcisetvolumn;mcisetvolumn.dwCallback=(DWORD)m_hWnd;mcisetvolumn.dwItem=MCI_DGV_SETAUDIO_VOLUME;mcisetvolumn.dwValue=vol;mciSend

11、Command(DeviceID,MCI_SETAUDIO,MCI_DGV_SETAUDIO_VALUE|MCI_DGV_SETAUDIO_ITEM,(DWORD)(LPVOID)&mcisetvolumn);/return mcisetvolumn.dwValue;return 0;4、修改Tao_MusicDlg.h在CTao_MusicDlg類里加入下面函數(shù)和變量public:void Show(int cnt);void addsong(TCHAR * name);void suiji();void pre();void next();void drawpic(int nTim

12、erID);BOOL AnalyseLrc(TCHAR* LrcFile);/歌詞解析函數(shù)BOOL DownLoad(TCHAR* Url, TCHAR* SaveName);/下載資源函數(shù)bool down(TCHAR* song,TCHAR* songer,TCHAR* getstr);/下載XML資源函數(shù)public:int hour,minute,second;CString cursong;int showstr;int donghuakind;/動(dòng)畫種類初始化時(shí)給一個(gè)隨機(jī)數(shù),選擇顯示的動(dòng)畫種類CImageListm_imList;typedef struct _LRC_INFO/定

13、義歌詞結(jié)構(gòu)體int Time;TCHAR Lyric256;LRC_INFO;LRC_INFO LrcInfo500;5、修改Tao_Music.cppl 在include下面再引入下面幾個(gè)文件和庫:#include "mp3.h"#include "mmsystem.h"#include "digitalv.h"#include <afxinet.h>#include <shlwapi.h>#pragma comment(lib,"Winmm.lib")#pragma comment(li

14、b,"wininet.lib") #pragma comment(lib, "shlwapi.lib")l 緊接著在全局聲明一個(gè)mp3型的全局變量:mp3 Mp3;l 轉(zhuǎn)到OnInitDialog()函數(shù)處在return 前加入如下代碼:/ TODO: Add extra initialization hereSetWindowText("MP3播放器");/標(biāo)題m_slider.SetRange(0,1000); /移動(dòng)范圍m_slider.SetPos(500);/滑塊指針的初始位置GetDlgItem(IDC_open)->

15、;EnableWindow(FALSE);GetDlgItem(IDC_pause)->EnableWindow(FALSE); GetDlgItem(IDC_del)->EnableWindow(FALSE);/List 初始化-/ 設(shè)置CListCtrl控件擴(kuò)展風(fēng)格:整行選中子項(xiàng)目圖標(biāo)列表|LVS_EX_GRIDLINESDWORD dwStyle; dwStyle =m_StoreItems.GetExtendedStyle(); dwStyle = dwStyle|LVS_EX_FULLROWSELECT|LVS_EX_SUBITEMIMAGES ;m_StoreItems

16、.SetExtendedStyle(dwStyle); / 載入32*32像素 24位真彩(ILC_COLOR24)圖片m_imList.Create(32,32,ILC_COLOR24,10,20); / 創(chuàng)建圖像序列CImageList對象/ 設(shè)置CImageList圖像列表與CListCtrl控件關(guān)聯(lián) LVSIL_SMALL小圖標(biāo)列表m_StoreItems.SetImageList(&m_imList,LVSIL_SMALL);/ 向列表視圖控件InsertColumn插入3列數(shù)據(jù) CRect mRect;m_StoreItems.GetWindowRect(&mRec

17、t); / 獲取控件矩形區(qū)域int length = mRect.Width()-3;m_StoreItems.InsertColumn(0, _T("圖片"), LVCFMT_CENTER,40, -1);m_StoreItems.InsertColumn(1, _T("信息"), LVCFMT_LEFT, length-60, -1);/-cursong=""showstr=0;donghuakind=rand()%4;/ TODO: Add extra initialization herel 在文件最后依次添加如下函數(shù):/-/

18、顯示函數(shù)/顯示cnt=0為open/1為delete/2為stop/3為timer/-void CTao_MusicDlg:Show(int cnt)CClientDC dc(this);CString mtime;TCHAR temp19;DWORD cdf,cdfrom;int showstrlen=18,i;int tposx,tposy,sposx,sposy;tposx=12,tposy=128;sposx=12,sposy=81;switch(cnt)case 0:hour=0;minute=0;second=0;dc.SetBkColor(RGB(124,252,0);/設(shè)置放置

19、計(jì)數(shù)器區(qū)域的外觀dc.SetTextColor(RGB(255,255,203);/設(shè)置數(shù)字顯示的顏色mtime.Format("%02d:%02d:%02d",hour,minute,second);/顯示時(shí)間進(jìn)度dc.TextOut(tposx,tposy,mtime);for(i=0;i<showstrlen;i+)tempi=cursong(i+showstr)%cursong.GetLength();tempi='0'showstr=(showstr+1)%cursong.GetLength();mtime.Format("- &q

20、uot;);/覆蓋上次顯示dc.TextOut(sposx,sposy,mtime);dc.TextOut(sposx,sposy,temp);break;case 1:dc.TextOut(sposx,sposy,"");KillTimer(0);KillTimer(1);KillTimer(2);hour=0;minute=0;second=0;/歌曲時(shí)間置0break;case 2:KillTimer(0);/取消計(jì)數(shù)器的顯示KillTimer(1);KillTimer(2);hour=0;minute=0;second=0;dc.SetBkColor(RGB(124

21、,252,0);/設(shè)置放置計(jì)數(shù)器區(qū)域的外觀dc.SetTextColor(RGB(255,255,203);/設(shè)置數(shù)字顯示的顏色mtime.Format("%02d:%02d:%02d",hour,minute,second);/顯示時(shí)間進(jìn)度dc.TextOut(tposx,tposy,mtime);for(i=0;i<showstrlen;i+)tempi=cursong(i+showstr)%cursong.GetLength();tempi='0'showstr=(showstr+1)%cursong.GetLength();mtime.Form

22、at("- ");/覆蓋上次顯示dc.TextOut(sposx,sposy,mtime);dc.TextOut(sposx,sposy,temp);break;case 3:second+;dc.SetBkColor(RGB(124,252,0);/設(shè)置放置計(jì)數(shù)器區(qū)域的外觀dc.SetTextColor(RGB(255,255,203);/設(shè)置數(shù)字顯示的顏色if(second=60)/設(shè)置鐘表的顯示minute+;second=0;if(minute=60)hour+;minute=0;/mtime.Format("%02d:%02d:%02d",ho

23、ur,minute,second);/顯示時(shí)間進(jìn)度/dc.TextOut(280,128,mtime); cdf=Mp3.getinformation(MCI_STATUS_LENGTH);/獲得當(dāng)前毫秒值MCI_STATUS_POSITIONif(cdf<=Mp3.getinformation(MCI_STATUS_POSITION)/如果停止就進(jìn)行換歌CString strtemp;GetDlgItemText(IDC_exit,strtemp);/獲取按鈕狀態(tài)if (strtemp.Compare("單曲")=0)Mp3.Setvolumn(1000-m_sli

24、der.GetPos();/聲音設(shè)為滑塊指示的地方Mp3.Load(this->m_hWnd,cursong);Mp3.Play();hour=0;minute=0;second=0;else if(strtemp.Compare("順序")=0)next();else if(strtemp.Compare("隨機(jī)")=0)suiji(); cdfrom=MCI_MAKE_MSF(MCI_MSF_MINUTE(cdf),MCI_MSF_SECOND(cdf),MCI_MSF_FRAME(cdf);/獲取當(dāng)前播放文件的信息mtime.Format(&

25、quot;%02d:%02d:%02d / %02d:%02d",hour,minute,second,cdf/1000/60,cdf/1000%60);dc.TextOut(tposx,tposy,mtime);for(i=0;i<showstrlen;i+)tempi=cursong(i+showstr)%cursong.GetLength();tempi='0'showstr=(showstr+1)%cursong.GetLength();mtime.Format("- ");/覆蓋上次顯示dc.TextOut(sposx,sposy,

26、mtime);dc.TextOut(sposx,sposy,temp);break;default:break;/-/添加歌詞/-void CTao_MusicDlg:addsong(TCHAR * name)/wsprintf(strNumber,_T("IDB_BITMAP%d"),rand()%24+162);CBitmap * pBmp = NULL;pBmp = new CBitmap();pBmp->LoadBitmap(rand()%24+IDB_BITMAP1);/ 載入位圖m_imList.Add(pBmp,RGB(0,0,0); delete pB

27、mp; / 添加數(shù)據(jù) InsertItem向列表中插入主項(xiàng)數(shù)據(jù) SetItemText向列表中的子項(xiàng)寫入數(shù)據(jù)LVITEM lvItem=0;/ 列表視圖控 LVITEM用于定義"項(xiàng)"的結(jié)構(gòu)lvItem.mask = LVIF_IMAGE|LVIF_TEXT;/ 文字、圖片lvItem.iItem = m_StoreItems.GetItemCount();/ 行號(hào)lvItem.iImage = m_StoreItems.GetItemCount();/ 圖片索引號(hào)(第一幅圖片 IDB_BITMAP1)lvItem.iSubItem = 0;/ 子列號(hào)m_StoreItems

28、.InsertItem(&lvItem); / 第一列為圖片m_StoreItems.SetItemText(m_StoreItems.GetItemCount()-1,1,name); / 第二列為名字/-/隨機(jī)函數(shù)/-void CTao_MusicDlg:suiji()int index=m_StoreItems.GetSelectionMark();/獲取選中的文本if(index=-1)MessageBox("請?zhí)砑右魳?quot;);return;index=rand()%m_StoreItems.GetItemCount();CString strfilename

29、;char str300;m_StoreItems.GetItemText(index,1,str,sizeof(str);strfilename.Format(_T("%s"),str);cursong=strfilename;m_StoreItems.EnsureVisible(index,FALSE);/選中m_StoreItems.SetItemState(index,LVIS_FOCUSED|LVIS_SELECTED,LVIS_FOCUSED|LVIS_SELECTED); /選中行m_StoreItems.SetSelectionMark(index);m_S

30、toreItems.SetFocus();/SetDlgItemText(IDC_filename,strfilename);Mp3.Stop();Mp3.Load(this->m_hWnd,strfilename);Mp3.Play();Mp3.Setvolumn(1000-m_slider.GetPos();/聲音設(shè)為滑塊指示的地方 SetTimer(0,1000,NULL);SetTimer(1,100,NULL);SetTimer(2,100,NULL);GetDlgItem(IDC_open)->EnableWindow(TRUE);GetDlgItem(IDC_paus

31、e)->EnableWindow(TRUE); GetDlgItem(IDC_del)->EnableWindow(TRUE);Show(0);/-/上一曲/-void CTao_MusicDlg:pre()int index=m_StoreItems.GetSelectionMark();/獲取選中的文本if(index=-1)MessageBox("請?zhí)砑右魳?quot;);return;index=(index-1+m_StoreItems.GetItemCount()%m_StoreItems.GetItemCount();CString strfilename;

32、char str300;m_StoreItems.GetItemText(index,1,str,sizeof(str);strfilename.Format(_T("%s"),str);cursong=strfilename;m_StoreItems.EnsureVisible(index,FALSE);/選中m_StoreItems.SetItemState(index,LVIS_FOCUSED|LVIS_SELECTED,LVIS_FOCUSED|LVIS_SELECTED); /選中行m_StoreItems.SetSelectionMark(index);m_St

33、oreItems.SetFocus();/SetDlgItemText(IDC_filename,strfilename);Mp3.Stop();Mp3.Load(this->m_hWnd,strfilename);Mp3.Play();Mp3.Setvolumn(1000-m_slider.GetPos();/聲音設(shè)為滑塊指示的地方 SetTimer(0,1000,NULL);SetTimer(1,100,NULL);SetTimer(2,100,NULL);GetDlgItem(IDC_open)->EnableWindow(TRUE);GetDlgItem(IDC_pause

34、)->EnableWindow(TRUE); GetDlgItem(IDC_del)->EnableWindow(TRUE);Show(0);/-/下一曲/-void CTao_MusicDlg:next()int index=m_StoreItems.GetSelectionMark();/獲取選中的文本if(index=-1)MessageBox("請?zhí)砑右魳?quot;);return;index=(index+1)%m_StoreItems.GetItemCount();CString strfilename;char str300;m_StoreItems.Ge

35、tItemText(index,1,str,sizeof(str);strfilename.Format(_T("%s"),str);cursong=strfilename;m_StoreItems.EnsureVisible(index,FALSE);/選中m_StoreItems.SetItemState(index,LVIS_FOCUSED|LVIS_SELECTED,LVIS_FOCUSED|LVIS_SELECTED); /選中行m_StoreItems.SetSelectionMark(index);m_StoreItems.SetFocus();/SetDlg

36、ItemText(IDC_filename,strfilename);Mp3.Stop();Mp3.Load(this->m_hWnd,strfilename);Mp3.Play();Mp3.Setvolumn(1000-m_slider.GetPos();/聲音設(shè)為滑塊指示的地方 SetTimer(0,1000,NULL);SetTimer(1,100,NULL);SetTimer(2,100,NULL);GetDlgItem(IDC_open)->EnableWindow(TRUE);GetDlgItem(IDC_pause)->EnableWindow(TRUE); G

37、etDlgItem(IDC_del)->EnableWindow(TRUE);Show(0);/-/解析歌詞/-BOOL CTao_MusicDlg:AnalyseLrc(TCHAR* LrcFile) /讀取文件到緩沖區(qū)中TCHAR* LrcBuf = NULL;FILE* fp = fopen(LrcFile, "rb");if( fp = NULL)return FALSE;fseek(fp, 0L, SEEK_END);long LrcLen = ftell(fp);if(LrcLen = 0)return FALSE;LrcBuf = (TCHAR*) ma

38、lloc(sizeof(TCHAR) * LrcLen + 1); /開辟緩沖區(qū)if(LrcBuf = NULL)return FALSE;fseek(fp, 0L, SEEK_SET);fread(LrcBuf, LrcLen + 1, 1, fp);if(LrcBuf = NULL)return FALSE;fclose(fp); /分析緩沖區(qū)中內(nèi)容TCHAR *p1 = NULL;TCHAR *p2 = NULL;int m, n;int i, j = 0;TCHAR* Lrc = LrcBuf;TCHAR CurTime100;TCHAR Lyric1024;int nCurTime;

39、while(1)/解析時(shí)間p1 = strchr(Lrc, ''); m = p1-Lrc;p2 = strchr(Lrc, '');n = p2-Lrc;for(i = m + 1; i < n; i+)CurTimei - m - 1 = Lrci;CurTimei - m - 1 = '0'/解析歌詞Lrc = p2;p1 = strchr(Lrc, '');m = p1-Lrc;p2 = strchr(Lrc, '');n = p2-Lrc; for( i = m + 1; i < n; i+)

40、Lyrici - m - 1 = Lrci;Lyrici - m - 1 = '0'if(p2 = NULL)break;Lrc = p2;if(lstrlen(Lyric) = 1 | lstrlen(Lyric) = 2)continue;/計(jì)算時(shí)間TCHAR* ptime = strchr(CurTime, ':');int k = ptime-CurTime;TCHAR temp100;for(i = k + 1; i < lstrlen(CurTime); i+)tempi - k - 1 = CurTimei;tempi - k - 1 = &

41、#39;0'nCurTime = (CurTime0 - '0') * 10 + (CurTime1 - '0') * 60 + atoi(temp) ) * 1000;LrcInfoj.Time = nCurTime;lstrcpy(LrcInfoj.Lyric, Lyric);j+;free(LrcBuf);LrcBuf = NULL;return TRUE;/-/下載資源函數(shù)/-BOOL CTao_MusicDlg:DownLoad(TCHAR* Url, TCHAR* SaveName)DWORD byteread = 0;TCHAR buffe

42、r100000;memset(buffer, 0,100000);HINTERNET internetopen;internetopen =InternetOpen("Testing", INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0);if (internetopen = NULL)return FALSE;HINTERNET internetopenurl;internetopenurl = InternetOpenUrl(internetopen, Url, NULL, 0, INTERNET_FLAG_RELOAD, 0);i

43、f (internetopenurl = NULL)InternetCloseHandle(internetopen);return FALSE;BOOL hwrite;DWORD written;HANDLE createfile;createfile = CreateFile(SaveName, GENERIC_WRITE, 0, 0, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0);if (createfile = INVALID_HANDLE_VALUE)InternetCloseHandle(internetopenurl);return FALSE

44、;BOOL internetreadfile;while(1)internetreadfile = InternetReadFile(internetopenurl, buffer, sizeof(buffer), &byteread);if(byteread=0)break;hwrite = WriteFile(createfile, buffer, sizeof(buffer), &written, NULL);if (hwrite = 0)CloseHandle(createfile);return FALSE;CloseHandle(createfile);return

45、 TRUE;/-/下載XML保存在getstr里/-bool CTao_MusicDlg:down(TCHAR* song,TCHAR* songer,TCHAR* getstr)/TCHAR* Url=new TCHARstrlen(song)+strlen(songer)+100;sprintf(Url,"DWORD byteread = 0;TCHAR buffer100000;memset(buffer, 0,100000);HINTERNET internetopen;internetopen =InternetOpen("Testing", INTER

46、NET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0);if (internetopen = NULL)delete Url;return FALSE;HINTERNET internetopenurl;internetopenurl = InternetOpenUrl(internetopen, Url, NULL, 0, INTERNET_FLAG_RELOAD, 0);if (internetopenurl = NULL)InternetCloseHandle(internetopen);delete Url;return FALSE;while(1)InternetReadFile(internetopenurl, buffer, sizeof(buffer), &byteread);if(byteread=0)break;sprintf(getstr,"%s",buffer);delete Url;return TR

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論