網(wǎng)頁瀏覽器Java課程設(shè)計

上傳人:無*** 文檔編號:99950473 上傳時間:2022-06-01 格式:DOC 頁數(shù):27 大小:617.50KB
收藏 版權(quán)申訴 舉報 下載
網(wǎng)頁瀏覽器Java課程設(shè)計_第1頁
第1頁 / 共27頁
網(wǎng)頁瀏覽器Java課程設(shè)計_第2頁
第2頁 / 共27頁
網(wǎng)頁瀏覽器Java課程設(shè)計_第3頁
第3頁 / 共27頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《網(wǎng)頁瀏覽器Java課程設(shè)計》由會員分享,可在線閱讀,更多相關(guān)《網(wǎng)頁瀏覽器Java課程設(shè)計(27頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、word 《 面向?qū)ο蟪绦蛟O(shè)計》 課程設(shè)計報告 題 目:網(wǎng)頁瀏覽器設(shè)計 院 〔系〕: 信息科學(xué)與工程學(xué)院 專業(yè)班級: 計算機(jī)科學(xué)與技術(shù)1201班 學(xué)生某某:程偉 學(xué) 號: 20121183011 指導(dǎo)教師: 吳奕 20 14 年 12 月 29 日至20 15 年 1 月 9 日 華中科技大學(xué)武昌分校制 面向?qū)ο蟪绦蛟O(shè)計 課程設(shè)計任務(wù)書 一、設(shè)計〔調(diào)查報告/論文〕題目 瀏覽器設(shè)計 二、設(shè)

2、計〔調(diào)查報告/論文〕主要內(nèi)容 內(nèi)容: 該瀏覽器要求是一個圖形界面操作,設(shè)計的功能類似于WINDOWS操作系統(tǒng)中的IE瀏覽器。系統(tǒng)使用Eclipse與工具,操作系統(tǒng)為WINDOWS,采用面向?qū)ο蠓椒ㄍ瓿?,包括需求與總體設(shè)計、詳細(xì)設(shè)計、編碼實現(xiàn)、系統(tǒng)測試。在URL地址欄中輸入網(wǎng)址,點擊轉(zhuǎn)向按鈕,該瀏覽器可以自動轉(zhuǎn)向所指地址頁面,顯示網(wǎng)頁信息,實現(xiàn)瀏覽器的根本功能,并可實現(xiàn)查看和保存訪問頁面的HTML源代碼。 根本功能與要求: 以下界面實現(xiàn)局部 ①實現(xiàn)生成網(wǎng)頁瀏覽器的主體框架 ②實現(xiàn)框架上各個組件的時間監(jiān)聽 ③圖形界面的設(shè)計 ④組件監(jiān)聽接口的實現(xiàn) 以下功能實現(xiàn)局部

3、①實現(xiàn)查看源文件的主體框架。 ②實現(xiàn)源文件的保存功能,包括另存為即可以將正在訪問的網(wǎng)頁進(jìn)展保存。 ③前進(jìn)即訪問現(xiàn)有頁面的上一個頁面;后退即訪問現(xiàn)有頁面的下一個頁面。 ④查看源文件功能即查看訪問頁面的HTML源文件代碼。 三、原始資料 1.《面向?qū)ο蟪绦蛟O(shè)計課程設(shè)計》指導(dǎo)書 2.耿祥義.JAVA大學(xué)實用教程.:清華大學(xué),2009. 四、要求的設(shè)計〔調(diào)查/論文〕成果 五、進(jìn)程安排 布置任務(wù),查找資料、需求分析1天 總體設(shè)計1天 詳細(xì)設(shè)計 編制源程序?qū)崿F(xiàn) 測試與修改1天 撰寫課設(shè)報告2天 六、主要參考資料 [1] X廣彬. Java課程設(shè)計案例精編〔第二版〕.

4、:清華大學(xué), 2011. [2] 耿祥義. Java課程設(shè)計〔第二版〕.:清華大學(xué), 2008. [3] 耿祥義.JAVA大學(xué)實用教程.:清華大學(xué),2009. [4] 鄒林達(dá).陳國君 Java2程序設(shè)計根底.:清華大學(xué),2010. [5] 鄒林達(dá).Java2程序設(shè)計根底實驗指導(dǎo).:清華大學(xué),2010. 指導(dǎo)教師〔簽名〕: 20 年 月 日 目錄 1需求與總體設(shè)計1 需求分析1 總體設(shè)計思路1 功能圖與類圖2 2詳細(xì)設(shè)計3 詳細(xì)設(shè)計思路3 復(fù)用組件4 3編碼實現(xiàn)5 4系統(tǒng)運行與測試21 系統(tǒng)測試情況21

5、 排除錯誤的處理24 總結(jié)25 26 / 27 1需求與總體設(shè)計 此網(wǎng)頁瀏覽器的主要功能描述:通過在地址欄里面輸入URL地址,可以訪的 網(wǎng)頁。除此之外,本案例中的網(wǎng)頁瀏覽器還增添了如下幾個功能。 1.另存為:可以將正在訪問的頁面進(jìn)展保存。 2.前進(jìn):訪問現(xiàn)有頁面的上一個頁面。 3.后退:訪問現(xiàn)有頁面的下一個頁面。 4.查看源文件:查看訪問頁面的HTML源文件,并且提供保存功能。 網(wǎng)頁瀏覽器的程序由文件WebBrowser.java與ViewSourceFrame.java兩個文件組成。 1〕WebBrowser,java 該文件包含名為WebBro

6、wser的public類,其主要功能為生成網(wǎng)頁瀏覽器的主體框架,實現(xiàn)框架上各個組件的事件偵聽。主要包括4個模塊:圖形用戶界面的構(gòu)建:組件監(jiān)聽接口的實現(xiàn):文件保存功能的實現(xiàn):查看源代碼框架的生成。 2〕ViewSourceFrame.java 該文件包含名為ViewSourceFrame的類,其主要功能是實現(xiàn)了源文件查看的主體框架,并實現(xiàn)了源文件的保存功能。主要包括兩個模塊:圖形用戶界面的構(gòu)建:組件監(jiān)聽接口的實現(xiàn)。 2詳細(xì)設(shè)計 WebBrowser.java文件是網(wǎng)頁瀏覽器的主類文件,生成了網(wǎng)頁瀏覽器的主體框架,并實現(xiàn)框架上各個組件的事件偵聽。 Pubili

7、c class WebBrowser extends JFrame implements HyperlinkListener,ActtionListener //建立主件,包括地址欄、界面、地址欄、菜單組、菜單項、工具欄、工具欄中按鈕組件、存放歷史地址、訪問順序。 public WebBrowser() /*構(gòu)造函數(shù),圖形化用戶界面*/ public void actionPerformed(ActionEvent e) /*實現(xiàn)監(jiān)聽器接口的actionPerformed函數(shù)*/ void saveFile(final String url)//保存文件 void getH

8、tmlSource (String url)//獲得原文件 public void hyperlinkUpdate(HyperlinkEvent e)//實現(xiàn)監(jiān)聽器接口的hyperlinkUpdate函數(shù) public static void main(String[] args)/*生成一個IE對象*/ ViewSourceFrame.java文件的作用是實現(xiàn)網(wǎng)頁瀏覽器中源文件瀏覽的主體框架并提供了源文件的保存功能。 class ViewSourceFrame extends JFrame implements ActionListener//建立主件 public View

9、SourceFrame (String htmlSource) //構(gòu)造函數(shù),初始化圖形用戶界面 public void actionPerformed(ActionEvent e)//實現(xiàn)監(jiān)聽器接口的actionPerformed函數(shù) 選擇好的容器就是為界面構(gòu)造一個根本的骨架,然后在其中添加各個組件。 組件復(fù)用表: 功能 所復(fù)用的組件 菜單組 復(fù)用JMenu組件 菜單項 復(fù)用JMenuItem組件 工具欄 復(fù)用JPanel組件 按鈕 復(fù)用utton組件 地址欄 復(fù)用JLabel組件 狀態(tài)欄 復(fù)用JP

10、anel組件 滾動條 復(fù)用scrollPane組件 菜單欄 復(fù)用JMenuBar組件 組件初始化 bar=new JToolBar (); //建立工具欄用來顯示地址欄 jMenuBar1 = new JMenuBar(); //建立菜單欄 fileMenu = new JMenu ("文件(F)"); //建立菜單組 對各個菜單項進(jìn)展初始化 saveAsItem = new JMenuItem ("另存為(A)..."); exitItem=new JMenuItem ("退出(I)"); backItem=new JMenuItem ("后退"); for

11、wardItem=new JMenuItem ("前進(jìn)"); fullscreenItem=new JMenuItem ("全屏(U)"); sourceItem=new JMenuItem ("查看源碼(C)"); reloadItem=new JMenuItem ("刷新(R)"); 工具欄與菜單欄的初始化過程類似。 3編碼實現(xiàn) 源代碼: import java.awt.*; import javax.swing.*; import java.awt.event.*; import javax.swing.event.*; i

12、mport javax.swing.border.*; import java.io.*; import .*; import java.util.*; public class WebBrowser extends JFrame implements HyperlinkListener,ActionListener{ //建立工具欄用來顯示地址欄 JToolBar bar=new JToolBar (); //建立網(wǎng)頁顯示界面 JTextField jurl = new JTextField (60); JEdi

13、torPane jEditorPane1 = new JEditorPane (); JScrollPane scrollPane = new JScrollPane (jEditorPane1); JFileChooser chooser=new JFileChooser (); JFileChooser chooser1=new JFileChooser (); String htmlSource; JWindow window = new JWindow (WebBrowser.this); utton but

14、ton2=new utton ("窗口復(fù)原"); Toolkit toolkit = Toolkit.getDefaultToolkit(); //建立菜單欄 JMenuBar jMenuBar1 = new JMenuBar(); //建立菜單組 JMenu fileMenu = new JMenu ("文件(F)"); //建立菜單項 JMenuItem saveAsItem = new JMenuItem ("另存為(A)..."); JMenuItem exitItem=new JMenuItem ("

15、退出(I)"); JMenu editMenu=new JMenu ("編輯(E)"); JMenuItem backItem=new JMenuItem ("后退"); JMenuItem forwardItem=new JMenuItem ("前進(jìn)"); JMenu viewMenu=new JMenu ("視圖(V)"); JMenuItem fullscreenItem=new JMenuItem ("全屏(U)"); JMenuItem sourceItem=new JMenuItem ("查看源碼(C)");

16、JMenuItem reloadItem=new JMenuItem ("刷新(R)"); //建立工具欄 JToolBar toolBar = new JToolBar(); //建立工具欄中的按鈕組件 utton picSave = new utton("另存為"); utton picBack = new utton("后退"); utton picForward = new utton("前進(jìn)"); utton picView = new utton("查看源代碼"); utton picExit = ne

17、w utton("退出"); JLabel label=new JLabel ("地址"); utton button=new utton ("轉(zhuǎn)向"); Box adress=Box.createHorizontalBox (); //ArrayList對象,用來存放歷史地址 private ArrayList history=new ArrayList(); //整型變量,表示歷史地址的訪問順序 private int historyIndex; /** **構(gòu)造函數(shù) **初始化圖形

18、用戶界面 */ public WebBrowser(){ setTitle ("網(wǎng)頁瀏覽器"); setResizable(false); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //為jEditorPane1添加事件偵聽 jEditorPane1.addHyperlinkListener (this); //為組件fileMenu設(shè)置熱鍵‘F’ fileMenu.setMnemon

19、ic('F'); saveAsItem.setMnemonic ('S'); //為“另存為〞組件設(shè)置快捷鍵為ctrl+s saveAsItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK_S,InputEvent.CTRL_MASK)); exitItem.setMnemonic('Q'); exitItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK_E,I

20、nputEvent.CTRL_MASK)); //將菜單項saveAsItem參加到菜單組fileMenu中 fileMenu.add (saveAsItem); //在菜單項中添加隔離 fileMenu.addSeparator (); fileMenu.add (exitItem); backItem.setMnemonic ('B'); backItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK

21、_Z,InputEvent.CTRL_MASK)); forwardItem.setMnemonic('D'); forwardItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK_P,InputEvent.CTRL_MASK)); editMenu.setMnemonic('E'); editMenu.add (backItem); editMenu.add (forwardItem); viewMenu.set

22、Mnemonic('V'); fullscreenItem.setMnemonic('U'); fullscreenItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK_U,InputEvent.CTRL_MASK)); sourceItem.setMnemonic('C'); sourceItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK_C,InputEvent.CTRL_MASK));

23、 reloadItem.setMnemonic('R'); reloadItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK_R,InputEvent.CTRL_MASK)); Container contentPane=getContentPane (); //設(shè)置大小 scrollPane.setPreferredSize(new Dimension(100,500)); contentPane.add (scroll

24、Pane, BorderLayout.SOUTH); //在工具欄中添加按鈕組件 toolBar.add(picSave); toolBar.addSeparator(); toolBar.add(picBack); toolBar.add(picForward); toolBar.addSeparator(); toolBar.add(picView); toolBar.addSeparator(); toolBar

25、.add(picExit); contentPane.add (bar,BorderLayout.CENTER); contentPane.add(toolBar,BorderLayout.NORTH); viewMenu.add (fullscreenItem); viewMenu.add (sourceItem); viewMenu.addSeparator (); viewMenu.add (reloadItem); jMenuBa

26、r1.add (fileMenu); jMenuBar1.add (editMenu); jMenuBar1.add (viewMenu); setJMenuBar (jMenuBar1); adress.add (label); adress.add (jurl); adress.add (button); bar.add (adress); //為組件添加事件監(jiān)聽 saveAsItem.addActionList

27、ener(this); picSave.addActionListener(this); exitItem.addActionListener(this); picExit.addActionListener(this); backItem.addActionListener(this); picBack.addActionListener(this); forwardItem.addActionListener(this); picForward.addActionL

28、istener(this); fullscreenItem.addActionListener(this); sourceItem.addActionListener(this); picView.addActionListener(this); reloadItem.addActionListener(this); button.addActionListener(this); jurl.addActionListener(this); } /**

29、**實現(xiàn)監(jiān)聽器接口的actionPerformed函數(shù) */ public void actionPerformed(ActionEvent e) { String url = ""; //點擊轉(zhuǎn)向按鈕 if (e.getSource() == button){ //獲得地址欄的內(nèi)容 url=jurl.getText (); //url不為“〞,并且以“://〞開頭 if(url.length ()>0&&url.s

30、tartsWith ("://")){ try { //JEditorPane組件顯示url的內(nèi)容 jEditorPane1.setPage (url); //將url的內(nèi)容添加到ArrayList對象history中 history.add(url); //historyIndex的數(shù)值設(shè)為history對象的長度-1

31、 historyIndex=history.size()-1; //重新布局 jEditorPane1.setEditable(false); //add by copy editor :) jEditorPane1.revalidate (); } catch(Exception ex) { //如果顯示失敗,如此彈出選擇對話框“無法打開該搜索頁〞

32、 JOptionPane.showMessageDialog (WebBrowser.this,"無法打開該搜索頁","網(wǎng)頁瀏覽器",JOptionPane.ERROR_MESSAGE); } } //url不為“〞,并且不以“://〞開頭 else if(url.length ()>0&&!url.startsWith ("://")) { //在url前面添加“://〞 url=":

33、//"+url; try { jEditorPane1.setPage (url ); history.add(url); historyIndex=history.size()-1; jEditorPane1.setEditable(false); //add by copy editor :) jEditorPane1.revalidate ();

34、 } catch(Exception ex) { JOptionPane.showMessageDialog (WebBrowser.this,"無法打開該搜索頁","網(wǎng)頁瀏覽器",JOptionPane.ERROR_MESSAGE); } } //沒有輸入url,即url為空 else if(url.length ()==0){ JOptionPane.s

35、howMessageDialog (WebBrowser.this,"請輸入地址","網(wǎng)頁瀏覽器",JOptionPane.ERROR_MESSAGE); } } //輸入地址后點擊回車 else if (e.getSource() == jurl){ url=jurl.getText (); if(url.length ()>0&&url.startsWith ("://")) { try {

36、 jEditorPane1.setPage (url); history.add(url); historyIndex=history.size()-1; jEditorPane1.setEditable(false); //add by copy editor :) jEditorPane1.revalidate (); jurl.setMaximumSize (jurl.getPreferr

37、edSize ()); } catch(Exception ex) { JOptionPane.showMessageDialog (WebBrowser.this,"無法打開該搜索頁","網(wǎng)頁瀏覽器",JOptionPane.ERROR_MESSAGE); } } else if(url.length ()>0&&!url.startsWith ("://")) {

38、 url="://"+url; try { jEditorPane1.setPage (url ); history.add(url); historyIndex=history.size()-1; jEditorPane1.setEditable(false); //add by copy editor :) jEditorPane1.revalidate ()

39、; } catch(Exception ex) { JOptionPane.showMessageDialog (WebBrowser.this,"無法打開該搜索頁","網(wǎng)頁瀏覽器",JOptionPane.ERROR_MESSAGE); } } else if(url.length ()==0){ JOptionPane.showMessageDialog

40、(WebBrowser.this,"請輸入地址","網(wǎng)頁瀏覽器",JOptionPane.ERROR_MESSAGE); } } //另存為... else if (e.getSource() == picSave||e.getSource() == saveAsItem){ url = jurl.getText ().toString ().trim(); if(url.length ()>0&&!url.startsWith ("://")) {

41、 url="://"+url; } if(!url.equals ("")) { //保存文件 saveFile(url); } else { JOptionPane.showMessageDialog (WebBrowser.this,"請輸入地址","網(wǎng)頁瀏覽器",JOptionPane.ERROR_MESSAGE); }

42、 } //退出 else if (e.getSource() == exitItem ||e.getSource() == picExit){ System.exit(0); } //后退 else if (e.getSource() == backItem ||e.getSource() == picBack){ historyIndex--; if(historyIndex < 0)

43、 historyIndex = 0; url = jurl.getText(); try{ //獲得history對象中本地址之前訪問的地址 url = (String)history.get(historyIndex); jEditorPane1.setPage(url); jurl.setText(url.toString()); jEditorPane1.setEditable(

44、false); //add by copy editor :) jEditorPane1.revalidate (); } catch(Exception ex){ } } //前進(jìn) else if (e.getSource() == forwardItem ||e.getSource() == picForward){ historyIndex++; if(historyI

45、ndex >= history.size()) historyIndex = history.size()-1; url = jurl.getText(); try{ //獲得history對象中本地址之后訪問的地址 url = (String)history.get(historyIndex); jEditorPane1.setPage(url); jurl.

46、setText(url.toString()); jEditorPane1.setEditable(false); //add by copy editor :) jEditorPane1.revalidate (); } catch(Exception ex){ } } //全屏 else if (e.getSource() == fullscreenItem){ boolean add_but

47、ton2=true; //獲得屏幕大小 Dimension size = Toolkit.getDefaultToolkit().getScreenSize(); Container content = window.getContentPane(); content.add (bar,"North"); content.add (scrollPane,"Center"); //button2為點擊“全屏〞后的復(fù)原按鈕

48、 if(add_button2==true) { bar.add (button2); } //為button2添加事件 button2.addActionListener (new ActionListener () { public void actionPerformed (ActionEvent evt) { WebBrowser.this.setEnabled (

49、true); window.remove (bar); window.remove (toolBar); window.remove (scrollPane); window.setVisible (false); scrollPane.setPreferredSize (new Dimension (100,500));

50、getContentPane ().add (scrollPane,BorderLayout.SOUTH); getContentPane ().add (bar,BorderLayout.CENTER); getContentPane ().add (toolBar,BorderLayout.NORTH); bar.remove (button2); pack(); }

51、 }); window.setSize (size); window.setVisible (true); } //查看源文件 else if (e.getSource() == sourceItem ||e.getSource() == picView){ url = jurl.getText ().toString ().trim (); if(url.length ()>0&&!url.startsWith

52、 ("://")) { url="://"+url; } if( !url.equals ("")) { //根據(jù)url,獲得源代碼 getHtmlSource (url); //生成顯示源代碼的框架對象 ViewSourceFrame vsframe = new ViewSourceFrame (htmlSou

53、rce); vsframe.setBounds (0,0,800,500); vsframe.setVisible(true); } else { JOptionPane.showMessageDialog (WebBrowser.this,"請輸入地址","網(wǎng)頁瀏覽器",JOptionPane.ERROR_MESSAGE); } }

54、 //刷新 else if (e.getSource() == reloadItem){ url=jurl.getText (); if(url.length ()>0&&url.startsWith ("://")) { try { jEditorPane1.setPage (url); jEditorPane1.setEditable(false); //add by copy editor :)

55、 jEditorPane1.revalidate (); } catch(Exception ex) { } } else if(url.length ()>0&&!url.startsWith ("://")) { url="://"+url; try { jEditorPane1.set

56、Page (url ); jEditorPane1.setEditable(false); //add by copy editor :) jEditorPane1.revalidate (); } catch(Exception ex) { } } } } /* **保存文件 */ void saveFile (final

57、String url) { final String linesep = System.getProperty ("line.separator"); chooser1.setCurrentDirectory (new File (".")); chooser1.setDialogType (JFileChooser.SAVE_DIALOG); chooser1.setDialogTitle ("另存為..."); if(chooser1.showSaveDialog (this) != JFi

58、leChooser.APPROVE_OPTION) return; this.repaint (); Thread thread = new Thread () { public void run () { try { .URL source = new URL (url); InputStream in = new BufferedInputStream (source.op

59、enStream ()); BufferedReader br=new BufferedReader (new InputStreamReader (in)); File fileName = chooser1.getSelectedFile (); FileWriter out = new FileWriter (fileName); BufferedWriter bw = new BufferedWriter (out

60、); String line; while((line = br.readLine ()) != null) { bw.write (line); bw.newLine (); } bw.flush (); bw.close ();

61、 out.close (); String dMessage = url + " 已經(jīng)被保存至"+ linesep +fileName.getAbsolutePath (); String dTitle = "另存為"; int dType = JOptionPane.INFORMATION_MESSAGE; JOptionPane.showMessageDialog ((ponent) null,dMessage,dT

62、itle,dType); } catch(.MalformedURLException muex) { JOptionPane.showMessageDialog ((ponent)null,muex.toString (),"網(wǎng)頁瀏覽器",JOptionPane.ERROR_MESSAGE); } catch(Exception ex) { JOptionPane

63、.showMessageDialog ((ponent) null,ex.toString (),"網(wǎng)頁瀏覽器",JOptionPane.ERROR_MESSAGE); } } }; thread.start (); } /* **獲得源代碼 */ void getHtmlSource (String url) { String linesep,htmlLine; linesep = System.

64、getProperty ("line.separator"); htmlSource =""; try { .URL source = new URL (url); InputStream in = new BufferedInputStream (source.openStream ()); BufferedReader br = new BufferedReader ( new InputStreamReader (in)); while(

65、(htmlLine = br.readLine ())!=null) { htmlSource = htmlSource +htmlLine+linesep; } } catch(.MalformedURLException muex) { JOptionPane.showMessageDialog (WebBrowser.this,muex.toString (),"網(wǎng)頁瀏覽器",JOptionPane.ERROR_MESSAGE); }

66、 catch(Exception e) { JOptionPane.showMessageDialog (WebBrowser.this,e.toString (),"網(wǎng)頁瀏覽器",JOptionPane.ERROR_MESSAGE); } } /** **實現(xiàn)監(jiān)聽器接口的hyperlinkUpdate函數(shù) */ public void hyperlinkUpdate (HyperlinkEvent e) { if(e.getEventType () == HyperlinkEvent.EventType.ACTIVATED) { String url = jurl.getText(); if(url.length ()>0&&url.startsWith ("://")) { try

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!