[ zormar @ 22.10.2007. 11:12 ] @
Kako zabraniti unos duplih podataka u text boxove, ali da budu dozvoljeni prazni text boxovi? |
[ zormar @ 22.10.2007. 11:12 ] @
[ Shadowed @ 22.10.2007. 12:23 ] @
Opisi malo detaljnije situaciju. Da li imas vise Textbox-a pa svi moraju biti razlitih vrednosti ili nesto drugo?
Ako je to u pitanju, onda mislim da je najlakse da napravis niz kontrola i da prilikom dogadjaja LostFocus proveris da li je .Text isto kao i u ostalim elementima niza. Ili ako ti vise odgovara da na kraju, prilikom potvrde unosa podataka proveris sve elemente. To mozes efikasno uraditi ako izdvojis .Text svojstva u niz stringova a onda taj niz sortiras i prodjes kroz njega poredeci susedne clanove. Ako nadjes iste, najdes koji textbox ima takvu vrednost .text property-a i dajes upozorenje (ili sta vec). [ zormar @ 22.10.2007. 13:01 ] @
Na formi imam Text1 ... Text15, i u njih treba upisati razlicite podatke, s tim sto svi Textboxovi ne moraju biti popunjeni neki mogu ostati i prazni.
Na koji nacin spreciti da prazne Textboxove prepoznaje kao iste po sadrzaju? [ Shadowed @ 22.10.2007. 15:33 ] @
Pa, prvo proveri da li je prazan i ako nije prazan tek onda vrsis proveru za dupliranjem.
[ vbbojan @ 22.10.2007. 17:40 ] @
Evo na izvolte:
Prvo umesto 15 tekst boksova Text1, Text2 ....Text15, napravi niz text(0), text(1).......text(14) i ovo nize ce da radi. Code: Private Sub NadjiDupli(intBrojPolja As Integer) Dim i As Integer, j As Integer Dim intPredZadnji Dim blnNasaoDupli As Boolean intBrojPolja = intBrojPolja - 1 ' Umanji za 1 jer se index broji od nule intPredZadnji = intBrojPolja - 1 ' Nećemo porediti zadnji u nizu, nema sa kim da se poredi 'Vozi kroz petlju i poredi prvo polje sa ostalima, zatim drugo polje sa ostalima ... For i = 0 To intPredZadnji If Text(i) <> "" Then ' Ako je prazan ne gledaj ga For j = i + 1 To intBrojPolja If Text(i).Text = Text(j).Text Then MsgBox "Postoje dva polja sa istim sadržajem." blnNasaoDupli = True Text(j).SetFocus 'Malo šminke: Stavi nadjeno polje u fokus i selektuj tekst da se bolje vidi Text(j).SelStart = 0: Text(j).SelLength = Len(Text(j).Text) Exit For End If Next j End If If blnNasaoDupli = True Then 'Nasao je duplikat ne mora dalje da gleda Exit For End If Next i End Sub Ovo je malo na brzinu, moze to i bolje da se odradi i da bude univerzalno, no ovo ti vrsi posao za konkretan problem Pozdrav [ zormar @ 22.10.2007. 19:40 ] @
zahvaljujem obojici na pomoci
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|