2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩5頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  圖片瀏覽器設(shè)計(jì)報(bào)告</b></p><p><b>  一、設(shè)計(jì)思路</b></p><p><b>  1.要達(dá)到的目的</b></p><p>  ①培養(yǎng)學(xué)生綜合利用VB語言進(jìn)行程序設(shè)計(jì)的能力,主要是利用VB的標(biāo)準(zhǔn)控件進(jìn)行設(shè)計(jì)。</p><p>

2、; ?、谀軌虼蜷_常見類型的圖片,自動(dòng)進(jìn)行縮放,適應(yīng)PictureBox的大小。</p><p> ?、墼贔ileListBox中只列出圖片文件。</p><p>  ④使用StatusBar 控件狀態(tài)條顯示圖片文件相關(guān)信息,包括圖片尺寸(單位:象素)、文件大小和日期等。</p><p>  ⑤使用HscrollBar控件對(duì)圖片進(jìn)行縮放。</p><

3、;p> ?、菘梢暂喠黠@示FileListBox中列出圖片文件。</p><p> ?、蕻?dāng)圖片放大超過窗口大小后,可以提供鼠標(biāo)移動(dòng)圖片顯示。</p><p><b>  2.關(guān)鍵問題的解決</b></p><p> ?、偈褂肔oadpicture方法在圖片框里加載符合格式要求的圖片。</p><p> ?、谑褂肍il

4、eListBox方法來顯示圖片。</p><p>  ③使用PaintPicture方法和改變滾動(dòng)條的Value屬性,使圖片能夠縮放。</p><p> ?、苁褂肨imer事件更改FileListBox的ListCount屬性,使圖片能自動(dòng)瀏覽。</p><p> ?、菔褂肕ouseMove事件,在圖片過大時(shí),通過鼠標(biāo)移動(dòng)使圖片顯示。</p><

5、p>  二、模塊之間的調(diào)用關(guān)系,或程序流程圖</p><p>  三、部分程序關(guān)鍵源代碼及注釋</p><p>  Private Sub Form_Load()</p><p>  Drive1.Drive = App.Path</p><p>  Dir1.Path = App.Path

6、 'App 是當(dāng)前的應(yīng)用程序?qū)ο?lt;/p><p>  File1.Pattern = "*.bmp;*.jpg;*.ico;*.wmf" '在FileListBox中只列出圖片文件。</p><p>  Picture1.AutoSize = True</p><p>  Picture2.A

7、utoSize = True '設(shè)定自動(dòng)縮放,適應(yīng)PictureBox的大小。</p><p>  StatusBar1.Panels.Add</p><p>  StatusBar1.Panels.Add</p><p>  StatusBar1.Panels.Add</p>&l

8、t;p>  StatusBar1.Panels.Item(1).MinWidth = 2000</p><p>  StatusBar1.Panels.Item(1).Alignment = sbrCenter</p><p>  StatusBar1.Panels.Item(2).MinWidth = 1800</p><p>  StatusBar1.Pa

9、nels.Item(2).Alignment = sbrCenter</p><p>  StatusBar1.Panels.Item(3).MinWidth = 2400</p><p>  StatusBar1.Panels.Item(3).Alignment = sbrCenter</p><p>  StatusBar1.Panels.Item(4).Min

10、Width = 3000</p><p>  StatusBar1.Panels.Item(4).Alignment = sbrCenter '設(shè)定StatusBar的數(shù)量和屬性</p><p><b>  End Sub</b></p><p>  Private Sub Drive1_Change()</

11、p><p>  On Error Resume Next</p><p>  Dir1.Refresh</p><p>  Dir1.Path = Drive1.Drive</p><p>  If Err.Number = 68 Then</p><p><b>  Err.Clear</b><

12、;/p><p>  MsgBox "請(qǐng)您先將光盤插入,謝謝。 ", , "提示"</p><p><b>  Exit Sub</b></p><p>  End If '設(shè)定錯(cuò)誤提示<

13、/p><p><b>  End Sub </b></p><p>  Private Sub Dir1_Change()</p><p>  File1.Path = Dir1.Path</p><p><b>  End Sub</b></p><p>  Private S

14、ub File1_Click()</p><p>  If Right(File1.Path, 1) <> "\" Then</p><p>  tempstring = File1.Path & "\" & File1.FileName '非根目錄時(shí),路徑中的最后加上一個(gè)反斜杠"\&quo

15、t;</p><p><b>  Else</b></p><p>  tempstring = File1.Path & "\" & File1.FileName</p><p>  End If '裝入選定的文件。</p><p>  Picture1.En

16、abled = True</p><p>  Picture2.Picture = LoadPicture(tempstring)</p><p>  Picture1.PaintPicture Picture2.Picture _</p><p>  , 0, 0, Picture1.Width, Picture1.Height, _</p><

17、;p>  0, 0, Picture2.Width, Picture2.Height '設(shè)定圖片的初始狀態(tài)。</p><p>  Picture2.Visible = False</p><p>  mysize = FileLen(Dir1.Path & "\" & File1.FileName)

18、</p><p>  Picture2.ScaleMode = 3</p><p>  StatusBar1.Panels(1) = "圖片尺寸:" & _</p><p>  Picture2.ScaleWidth & "×" & Picture2.ScaleHeight</p>

19、<p>  StatusBar1.Panels(2) = "文件大小:" & _</p><p>  Int(mysize / 1024 * 10 + 0.5) / 10 & "KB"</p><p>  StatusBar1.Panels(3) = "修改日期:" & "2006-

20、09-15 " & "09:00"</p><p>  StatusBar1.Panels.Item(4) = "攝影機(jī)的型號(hào):NiKon Coolpix 7600" '設(shè)定圖片信息的提取</p><p><b>  End Sub</b></p><p>  Privat

21、e Sub Command1_Click()</p><p>  If Command1.Caption = "自動(dòng)瀏覽" Then</p><p>  Timer1.Enabled = True</p><p>  Command1.Caption = "停止瀏覽"</p><p><b>

22、  Else</b></p><p>  Timer1.Enabled = False</p><p>  Command1.Caption = "自動(dòng)瀏覽"</p><p>  End If '設(shè)定自動(dòng)瀏覽</p>

23、<p><b>  End Sub</b></p><p>  Private Sub Command2_Click()</p><p><b>  Unload Me</b></p><p><b>  End Sub</b></p><p>  Private

24、 Sub Timer1_Timer()</p><p>  X = File1.ListIndex</p><p><b>  X = X + 1</b></p><p>  If X < File1.ListCount Then</p><p>  File1.Selected(X) = True</p&g

25、t;<p>  Call File1_Click</p><p><b>  Else</b></p><p>  File1.ListIndex = 0</p><p>  End If '設(shè)定timer事件來自動(dòng)瀏覽圖片&

26、lt;/p><p><b>  End Sub</b></p><p>  Private Sub Form_QueryUnload(Cancel As Integer, _</p><p>  UnloadMode As Integer)</p><p>  Title = MsgBox("您確定要退出嗎?&qu

27、ot;, vbYesNoCancel, "提示")</p><p>  If Title <> 6 Then</p><p>  Cancel = True</p><p><b>  End If</b></p><p>  If Title = 6 Then</p>&l

28、t;p>  MsgBox "謝謝您的使用,歡迎再次使用。 ", , "圖片瀏覽器"</p><p><b>  End If</b></p><p><b>  End Sub</b></p><p>  Private Sub HScroll1_Change()&l

29、t;/p><p>  Picture1.Cls</p><p><b>  Max = 200</b></p><p>  Min = 1 '設(shè)定滾動(dòng)條的最大、最小值。</p><p>  Value = 200</

30、p><p>  smallchang = 1</p><p>  largechang = 1 '設(shè)定Value值的改變量。</p><p>  Picture1.PaintPicture Picture2.Picture, 0, 0, _</p><p&g

31、t;  Picture1.Width * HScroll1.Value / 100, _</p><p>  Picture1.Height * HScroll1.Value / 100, 0, 0, _</p><p>  Picture2.Width, Picture2.Height '使用滾動(dòng)條縮放圖片</p&g

32、t;<p><b>  End Sub</b></p><p>  Private Sub Picture1_MouseDown(Button As Integer, _</p><p>  Shift As Integer, X As Single, Y As Single)</p><p><b>  X1 = X&

33、lt;/b></p><p><b>  Y1 = Y</b></p><p><b>  End Sub</b></p><p>  Private Sub Picture1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

34、</p><p><b>  X2 = X</b></p><p><b>  Y2 = Y</b></p><p>  X3 = X3 + X2 - X1</p><p>  Y3 = Y3 + Y2 - Y1</p><p>  Picture1.Picture = Lo

35、adPicture(tempstring)</p><p>  Picture1.Cls</p><p>  If HScroll1.Value <> 100 Then '使用鼠標(biāo)移動(dòng)圖片</p><p>  Picture1.PaintPicture Pictur

36、e2.Picture, X3, Y3, _</p><p>  Picture1.Width * HScroll1.Value / 100, _</p><p>  Picture1.Height * HScroll1.Value / 100 '使用PaintPicture方法</p><p>&

37、lt;b>  Else</b></p><p>  Picture1.PaintPicture Picture2.Picture, X3, Y3, _</p><p>  Picture1.Width, Picture1.Height</p><p><b>  End If</b></p><p>&

38、lt;b>  End Sub</b></p><p>  Private Sub munfileopen_Click() '菜單欄"打開"</p><p>  CommonDialog1.ShowOpen</p><p>  Pictur

39、e2.Picture = LoadPicture(CommonDialog1.FileName)</p><p>  Picture1.Cls</p><p>  Picture1.PaintPicture Picture2.Picture, 0, 0, _</p><p>  Picture1.Width, Picture1.Height, 0, 0, _<

40、/p><p>  Picture2.Width, Picture2.Height</p><p>  Picture2.Visible = False</p><p>  CommonDialog1.Filter= pictures|(*.bmp)|*.bmp|pictures|(*.jpg)|*.jpg|pictures|(*.gif)|*.gif|pictures|

41、(*.ico)|*.ico" '設(shè)定載入文件的格式</p><p>  munbigger.Enabled = True</p><p>  munsmaller.Enabled = True</p><p>  munback.Enabled = True</p><p>  mysize = FileLen(Comm

42、onDialog1.FileName)</p><p>  Picture2.ScaleMode = 3</p><p>  StatusBar1.Panels(1) = "圖片尺寸:" & _</p><p>  Picture2.ScaleWidth & "×" & Picture2.Sc

43、aleHeight</p><p>  StatusBar1.Panels(2) = "文件大小:" & _</p><p>  Int(mysize / 1024 * 10 + 0.5) / 10 & "KB"</p><p>  StatusBar1.Panels(3) = "修改日期:"

44、; & "2006-09-15 " & "09:00"</p><p>  StatusBar1.Panels.Item(4) = "攝影機(jī)的型號(hào):NiKon Coolpix 7600" '設(shè)定圖片信息的提取</p><p><b>  End Sub</b><

45、;/p><p>  Private Sub munfileexit_Click() '菜單欄"關(guān)閉"</p><p><b>  Unload Me</b></p><p><b>  End Sub</b><

46、/p><p>  Private Sub munbigger_Click() '菜單欄"放大"</p><p>  Picture1.Cls</p><p>  Picture2.Width = Picture2.Width * 0.8</p>

47、<p>  Picture2.Height = Picture2.Height * 0.8</p><p>  Picture1.PaintPicture Picture2.Picture, 0, 0, _</p><p>  Picture1.Width, Picture1.Height, 0, 0, _</p><p>  Picture2.Widt

48、h, Picture2.Height</p><p><b>  End Sub</b></p><p>  Private Sub munsmaller_Click() '菜單欄"縮小"</p><p>  Picture1.Cl

49、s</p><p>  Picture2.Width = Picture2.Width * 1.5</p><p>  Picture2.Height = Picture2.Height * 1.5</p><p>  Picture1.PaintPicture Picture2.Picture, 0, 0, _</p><p>  Pict

50、ure1.Width, Picture1.Height, 0, 0, _</p><p>  Picture2.Width, Picture2.Height</p><p><b>  End Sub</b></p><p>  Private Sub munback_Click()

51、 '菜單欄"還原"</p><p>  Picture2.Picture = LoadPicture(Dir1.Path & "\" & File1.FileName)</p><p>  Picture1.PaintPicture Picture2.Picture, 0, 0, _</p&

52、gt;<p>  Picture1.Width, Picture1.Height, 0, 0, _</p><p>  Picture2.Width, Picture2.Height</p><p>  Picture2.Visible = False</p><p><b>  End Sub</b></p>&l

53、t;p>  四、設(shè)計(jì)方案的完善及目前存在的問題</p><p>  1.設(shè)計(jì)方案要完善的地方</p><p> ?、僭黾痈鶕?jù)圖片的長寬比改變PictrueBox的長寬比。</p><p>  ②增加改變窗口大小,窗口上的圖片也要做相應(yīng)的調(diào)整。</p><p> ?、弁晟撇藛螜诘摹按蜷_”功能和鼠標(biāo)拖動(dòng)圖片功能。</p>&l

54、t;p>  2. 目前存在的問題</p><p>  ①菜單欄的“打開”功能不夠完善。</p><p>  ②單擊鼠標(biāo)拖動(dòng)圖片功能不能令人滿意。</p><p> ?、畚募男畔@示不夠全面。</p><p>  五、本次設(shè)計(jì)的收獲及心得體會(huì)</p><p>  ①在打好基礎(chǔ)的前提下,努力拓寬自己的知識(shí)面。<

55、;/p><p>  ②增加練習(xí)的時(shí)間,把基礎(chǔ)做扎實(shí)。</p><p>  六、對(duì)該題目和VB設(shè)計(jì)的意見和建議</p><p>  1. 對(duì)該題目的意見和建議</p><p>  ①增加對(duì)圖片文件的簡單的編輯功能。如縮放、裁減、添加文本框等。</p><p>  ②在瀏覽功能方面,增加全屏瀏覽、旋轉(zhuǎn)等功能。</p>

溫馨提示

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

評(píng)論

0/150

提交評(píng)論