[ Fanta @ 24.10.2007. 13:12 ] @
Dobar dan društvo!

Davnih dana sam našao jedan zanimljivi kod, koji bi mi baš trebao, pogledajte na : http://www.praktikum.co.yu/office/access/acc_075.htm.

Međutim kada pokušam da primjenim taj kod koji bi trebao označiti sve checkbox-ove odjednom (kojih može biti na odabranoj formi temeljem upita, od nekoliko do nekoliko stotina), označi mi samo jedan checkbox, i to prvi, a ostale ne.

Zna li netko u čemu je problem? ili ima kakvo drugo riješenje?
[ Getsbi @ 24.10.2007. 13:46 ] @
Ovaj problem spada u domen takozvanih namerno smišljenih problema. Nešto slično šahovskim problemima. Sa stanovišta projektovanja korisničkog interfejsa, kada se dođe u situaciju da na formu treba postaviti grupu kontrola sa više od 4-5 međusobno isključivih dugmadi za čekiranje tada se preporučuje u cilju dobre komunikacije programa sa korisnikom, da se postave Combo Box-ovi. Dakle nikako stotinjak dugmadi.

Što se tiče konkretnog problema valjalo bi da zakačiš svoj primer pa da se neko pozabavi kodom. Moguće i da je neka trivijalna greška.
[ Fanta @ 26.10.2007. 09:35 ] @
Poštovanje Getsbi!

Dugo se nismo čuli, to je zato što zadnjih mjeseci punim bazu, koju sam napravio zahvaljujući svima na ovom forumu, kao i tebi, koji ste mi pomogli. Mada moram iskreno priznati da je to dosadan posao, ali ga netko mora uraditi.

Sad kad je hrpa podataka, dolazi do situacija kad mi šef rekne obriši ovo iz baze, ili obriši ono. Brisanje sam napravio tako da je potrebno označiti checkbox, a nakon toga kliknuti na button Obrisati, jer u slučaju da se iznenada predomislim za neki podatak, dovoljno ga je otčekirati prije brisanja. Sve je bilo u redu dok je bilo u pitanju par redova,ali dogodilo se je to da imam katakad 100 i više redova, a onda traje dok ih sve označim.

Stoga mi je potreban kod koji će kao u primjeru koda dolje označiti sve checkbox-ove:

Code:

Private Sub Svi_Click()
' Selektuje sve prekidače na formi (ovaj kod se napravi ustvari dva puta za dva buttona, jednim koji se mogu svi označiti, a drugim odznačiti)

Dim ctr As Control
For Each ctr In Controls
  If TypeOf ctr Is CheckBox Then
    ctr.Value = True
    ' Vrednost False za "Nijedan"
  End If
Next ctr
End Sub


Kao što sam ranije rekao, iako bi prema teoriji mjesta gdje sam našao ovaj kod trebao označiti sve checkbox-ove koji su na formi otvoreni, označi mi samo prvi, a ostale ne.

Ne vidim u čemu je problem? Da li je potrebno možda uključiti i frm da se rekne da se radi o trenutnoj formi?
[ duledixi @ 26.10.2007. 09:51 ] @
Evo da pokusam pomoci. Ja imam slican slucaj u svojoj bazi, na formi nivelacije cijena imam chekboxove za svaki artikal za koji zelim povecati ili smanjiti cijenu. I ja sam to rijesio ovako:
Code:
Private Sub cmdMark_Click()
Dim rst As Recordset
Set baza = OpenDatabase("C:\Program files\StarSoft\BAZAP2000_dat.mdb")
Set rst = baza.OpenRecordset("magacin")
rst.MoveFirst
Do Until rst.EOF
    rst.Edit
    rst!marker = 1
    rst.Update
    rst.MoveNext
Loop
rst.Close

Me.Refresh
End Sub


Evo pokusaj na ovaj nacin, kod mene to radi savrseno. Nadam se da ce ti ovaj primjer pomoci.