U trendu

Visual Basic – InputBox i problem „OK ili Cancel“

Recimo da je potrebno da vaša aplikacija koristi poneku kontrolu InputBox. Postavlja se pitanje šta se dešava ako korisnik nije uneo nikakvu vrednost a kliknuo je na „OK“ ili je samo kliknuo na „Cancel“? Između ova dva slučaja ipak postoji izvesna razlika, koja može da različito utiče na dalje izvršavanje programa. Zato ćemo vam pojasniti kako da odredite ovu razliku.

Vidite, u slučaju da korisnik klikne na „Cancel“, kao rezultat vraća se vbNullString. Međutim , ukoliko klikne na „OK“, vratiće se prazan string („“). Inače, unutar Visual Basic-a prazan string je poravnat sa vrednošću vbNullString, tako da ne vredi vršiti njihovo poređenje – mada su po svojoj prirodi potpuno drugačiji.

Ipak, postoji način da odredite tačno vraćenu vrednost. Uradićemo to uz pomoć funkcije StrPtr (string pointer), koja će odrediti da li je vraćeni string zaista vbNullString ili je vraćena nula. U sledećem primeru videćemo programski kod koji demonstrira ovo određivanje, tj. određivanje na koje dugme je kliknuto unutar InputBox dijaloga (rezultat možete videti na slici) :


Dim strUlaz As String

strUlaz = InputBox(„Unesite neki string:“)

If StrPtr(strUlaz) = 0 Then
MsgBox „Upravo ste kliknuli Cancel!“
End If

Pratite Krstaricu i preko mobilne aplikacije za Android i iPhone.