Ponedjeljak 20 Maj 2013
Veličina slova

Visual basic

'Lovljenje' greške u VB6 programu

Ocjene članka:  / 0

   U Visual Basic 6 programu je moguće predvidjeti nastanak greške (pogrešnu akciju korisnika, greška u sistemskim resursima i sl.) i spriječiti 'pad' programa 'lovljenjem' te greške i izvođenjem odgovarajuće akcije, odnosno davanjem mogućnosti korisniku da izvede akciju za rješavanje nastale situacije i nastavak rada. Da bi se to postiglo, koristi se sljedeće:

Ispred linije u kojoj se očekuje da bi mogla nastati greška upisati sljedeći kod:


On Error GoTo greska

 

Riječ greska, koju sam ja izabrao, birate po volji. To je samo oznaka linije koja je zadužena za obradu te greške.

U slučaju pojave greške fokus se prebacije na liniju na kraju procedure koja počinje sa greska.

Visual Basic 6 tajne i trikovi

Ocjene članka:  / 1

Visual Basic 6Učenje programiranja zahtijeva puno truda i vremena, a kreiranje funkcionalnog i intuitivnog programa još više. Još ako, u toku projektovanja neke aplikacije morate tražiti i učiti sintaksu naredbi, onda nećete daleko stići. Da ne bih svaki put ponovo tražio neke sintakse i metode koje sam otkrio, smislio ili pronašao tokom programranja u Visual Basic 6, ja sam sve zapisivao u jedan word dokument koji sam nazvao VB6 tips. Tog materijala se, tokom godina, nabralo više od 70 stranica.

Ta iskustva, skupljena u PDF dokument od 77 stranica možete preuzeti u sekciji Poseban download u dokumentu Visual Basic 6 programiranje - primjeri, savjeti i trikovi. U dokumentu su sintakse Visual Basic 6 naredbi, metode programiranja, primjeri i savjeti koji su rezutat direktnog rada a ne teoretisanja ili kopiranja sa interneta. Svi primjeri su iz stvarnih projekata i mogu se direktno kopirati i primijeniti u drugim projektima.

Can't access the system registry

Ocjene članka:  / 0

Ako se pri pokretanju Project\References... javi greška Can't access the system registry i nije moguće pristupiti referencama u VB-u, onda pokrenuti Registry Monitor (RegMon.exe) (iz sysinternals suite) i postaviti filter da prikazuje samo stavke od VB6.exe (include: VB6.exe).

Nakon toga pokrenuti Visual Basic 6 i u Registry Monitor-u pogledati kojem registy ključu VB6.exe nije mogao pristupiti – access denied.

U ovom slučaju je to:

OpenKey          HKCR\TypeLib\{D8468700-DD70-4E4D-B03D-BAD2551CFDD7}            ACCESS DENIED

Can't find project library CurDir

Ocjene članka:  / 0

Ako pri pokretanju programa iz Visual basic editora "iskoči" greška da nije pronađena library CurDir onda znači da nedostaje neka od referenci. Treba izabrati Project\References...

U novodobijenom prozoru će biti prikazane uključene reference (sa kvakicama). Ispred neke od uključenih referenci će biti ispisano MISSING. Potrebno je isključiti tu referencu da bi se program mogao pokrenuti.

Pokretanje dokumenta pomoću ShellExecute API funkcije

Ocjene članka:  / 0
Za pokretanje nekog file-a iz VB aplikacije potrebno je prvo deklarisati API funkciju ShellExecute:


Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long


Deklarisati i varijablu koja će sadržavati putanju i ime file-a i varijablu za praćenje greške:

Dim file As String, greska As Variant


Nakon toga, pozivanje funkcije se vrši navođenjem cijele putanje do file-a koji se pokreće kao argumenta funkcije ShellExecute:


'otvaranje file-a

greska = ShellExecute(frmopen.hwnd, "open", file, "", "", 1) 'praćenje greške

shellgreske greska

ENUM tip podataka

Ocjene članka:  / 1

Ako je potreENUM tip podatakabno definisati vlastiti tip podataka sa određenim vrijednostima koje Visual Basic ponudi nakon upisa imena tipa podatka i znaka jednako (=), slika ispod, potrebno je deklarisati ENUM tip podataka.

 

 

 

Upotreba DATE funkcije

Ocjene članka:  / 0

Za dobijanje trenutnog datuma u Visual Basic 6 programu potrebno je koristiti funkciju Date. Ova funkcija daje trenutni datum i može se koristiti kao uprimjeru ispod:

datum=Date

Time se u varijablu datum smiješta vrijednost trenutnog datuma.

Za prikaz datuma u željenom formatu koristiti funkciju Format:

Format (date, "dd/mm/yyyy")

U ovom primjeru je izvršeno formatiranje datuma u formatu npr. 27/07/2004.

Visual basic CASE naredba

Ocjene članka:  / 2

CASE naredba služi za usmjeravanje toka izvršavanja programa na osnovu vrijednosti varijable ili izraza.

U sljedećem primjeru se na osnovu vrijednosti varijable MjesecS, koja predstavlja redni broj mjeseca, varijabli MjesecL dodjeljuje naziv mjeseca.

Upotreba funkcije SendKeys

Ocjene članka:  / 0

Ako je potrebno iz programa simulirati pritisak na neku tipku sa tastature, koristi se funkcija SendKeys ("^{END}"), True

U tabeli su navedene tipke na tastaturi i kodovi koji se koriste u funkciji sendkeys:

Maskiranje znakova ukucanih u text box

Ocjene članka:  / 0

Ako se text box koristi za unos password-a moguće je izvršiti maskiranje unesenih znakova, tj. zamjenu ukucanog znaka željenim znakom. Potrebno je za text box u svojstvo PasswordChar upisati znak koji će biti korišten kao zamjenski, npr. *

Sada će pri upisu teksta u text box biti prikazane samo zvjezdice.

Zabrana upisa nekog znaka u txtbox

Ocjene članka:  / 0

Da bi se izvršila zabrana upisa određenog znaka u text box potrebno je pratiti pritisak tipke na tastaturi i to kroz proceduru txtime_KeyPress. Ako je detektovan zabranjen znak onda se ASCII vrijednost postavlja na nulu.

Na primjeru je zabrana upisa svih znakova osim cifara 0-9 i tipki Del i Backspace.

Private Sub txtime_KeyPress(KeyAscii As Integer)

 

  If KeyAscii >47 And KeyAscii <58 or KeyAscii=127 Or KeyAscii=8 Then

 

  Else

     KeyAscii=0

     Beep

  End if

End Sub


Moguće je umjesto ASCII koda za neki znak koristiti funkciju Asc ali je tada moguće samo pisati uslove sa = kao u primjeru:

Private Sub txtime_KeyPress(KeyAscii As Integer)

If KeyAscii = Asc(".") Then

MsgBox "Unos decimalnog broja nije dozvoljen.", vbOKOnly + vbInformation, "Poruka."

End If

End Sub

Stranica 1 od 2

Forma za logiranje

Države posjetilaca

Prvih 5:
Bosna i Hercegovina flag 33%Bosna i Hercegovina
Hrvatska flag 28%Hrvatska
Srbija flag 14%Srbija
USA flag 3%USA
Slovenija flag 3%Slovenija
83086 posjeta iz 131 zemalja