Ongelma on seuraavanlainen. Ohjelma luo taulukon esim. checkbox:eista:
Dim taulukko(0 To 7, 0 To 19) As Object .. for x = 1 to .. taulukko(3, x) = New CheckBox next
Tähän asti toimii hyvin. Mutta miten voin hallita noiden checkboxien tapahtumia? Esimerkiksi jos taulukko(3, x).checked muuttuu TRUE => FALSE, niin miten voi liittää ko. tapahtumaan toimintoja????
jos sä haluat tehdä eventin siitä kun checkedin arvo muuttuu niin sun täytyy liittää tuo taulukko(3,i) johonkin designerin puolella olevaan todelliseen checkboxiin.
checkbox1 = taulukko(3,i)
sen jälkeen voit tehdä checkbox1_checkedchanged eventin mikä sitte käynnistää jotain kun checkbox on rastitettu päälle.
jos et käytä mitään todellisia checkboxeja, taulukko voi yhtä hyvin olla boolean eikä checkbox objecti.
groovyb kirjoitti:
jos sä haluat tehdä eventin siitä kun checkedin arvo muuttuu niin sun täytyy liittää tuo taulukko(3,i) johonkin designerin puolella olevaan todelliseen checkboxiin.
checkbox1 = taulukko(3,i)
sen jälkeen voit tehdä checkbox1_checkedchanged eventin mikä sitte käynnistää jotain kun checkbox on rastitettu päälle.
jos et käytä mitään todellisia checkboxeja, taulukko voi yhtä hyvin olla boolean eikä checkbox objecti.
...siis kirjoitti täyttä skeidaa...
EDIT:...pikku lisäys - mikäli kiinnostut taiteilusta niin mm. Microsof Script Control 1.0 (C:\WINDOWS\system32\msscript.ocx) avulla voit periaatteessa kirjoitella kaiken lennossa...mikäli controllia ei löydy niin imppaa netistä...kun ja jos controlli on asennettu ja rekisteröity, tuo com-objekti projektiisi ja tutki assembly-analysoijalla mitä kivaa löytyy...
no tuo koodihan jonka linkkasit juuri tekee nappulan.
silloinhan nappula on olemassa jolloin sille voi tehdä eventin.
ja mä nyt tein esimerkin yhdelle checkboxille, kun kysyttiin miten checkboxia saa seurattua, ja se tehdään eventillä.
henk.koht käsittelen asiat ennemmin digitaalisena I/O:na (näin logiikkaohjelmoijana), jos on ollut tarve true/false listauksille, enkä käyttänyt taulukoituja objekteja jotka ajaa saman asian.
makuasioita mutta mielestäni on vaan kätevämpää seurata yhdellä bitillä, 0/1, jos tarve on vain true falselle.
Toi Nean koodi toimii esim. yhdelle Buttonille, mutta jos olen määritellyt:
For x = 0 To 29 taulukko(9, x) = New Button Next x Me.Controls.Add(taulukko(9, x))
Niin miten ihmeessä pääsen käsiksi siihen tapahtumaan, että painan esim. taulukon (9,5) buttonia?
Tällainen ei toimi:
AddHandler taulukko(9, 5).Click, AddressOf NappiClick
Eli taulukossa 30 nappia ja tarkoituksena olisi saada selville sen indeksi napista, jota painetaan. Löytyisköhän apua..?
Aihe on jo aika vanha, joten et voi enää vastata siihen.