Tradiční zpracování chyb
Výše uvedený způsob zpracování chyb nebyl ve Visual Basicu až do verze 6.0 včetně možný, dříve se
používal způsob, založený na příkazu On Error a podporuje se i nadále. (Ještě bych chtěl poznamenat, že
při práci s některými objektovými hierarchiemi, například s objekty pro přístup k datům (DAO, ADO), jste se
možná setkali ještě s jiným druhem zpracování chyb – přes speciální chybové objekty (kolekce Errors) nebo
události Error. Těmito způsoby zpracování chyb se zde zabývat nebudeme.) Výše uvedenému strukturovanému
zpracování chyb zhruba odpovídá následující výpis:
' Začátek procedury
' Zapne se sledování chyb
On Error Goto ChybíObrázek
' kód procedury, mj. příkaz:
picVýhra.Image = Image.FromFile(Application.StartupPath & "\Money.wmf")
' Ukončení procedury, když proběhla dobře:
Exit Sub
' Chybová rutina:
ChybíObrázek:
Select Case Err.Number
Case 5
MessageBox.Show("Chybí soubor s obrázkem")
picVýhra.Image = Nothing
Resume Next
Case Else
MessageBox.Show("Neošetřená chyba: " & _
Err.Number & " " & err.description)
Application.Exit()
End Select
End Sub
používal způsob, založený na příkazu On Error a podporuje se i nadále. (Ještě bych chtěl poznamenat, že
při práci s některými objektovými hierarchiemi, například s objekty pro přístup k datům (DAO, ADO), jste se
možná setkali ještě s jiným druhem zpracování chyb – přes speciální chybové objekty (kolekce Errors) nebo
události Error. Těmito způsoby zpracování chyb se zde zabývat nebudeme.) Výše uvedenému strukturovanému
zpracování chyb zhruba odpovídá následující výpis:
' Začátek procedury
' Zapne se sledování chyb
On Error Goto ChybíObrázek
' kód procedury, mj. příkaz:
picVýhra.Image = Image.FromFile(Application.StartupPath & "\Money.wmf")
' Ukončení procedury, když proběhla dobře:
Exit Sub
' Chybová rutina:
ChybíObrázek:
Select Case Err.Number
Case 5
MessageBox.Show("Chybí soubor s obrázkem")
picVýhra.Image = Nothing
Resume Next
Case Else
MessageBox.Show("Neošetřená chyba: " & _
Err.Number & " " & err.description)
Application.Exit()
End Select
End Sub
Labels: visual basic
<< Home