Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: Tapahtumien hallinta taulukoiduilla objekteilla

Sinis [21.12.2007 13:58:59]

#

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????

groovyb [21.12.2007 14:51:18]

#

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.

neau33 [21.12.2007 17:36:51]

#

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...

tsekkaa tämä

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...

groovyb [21.12.2007 23:08:32]

#

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.

Sinis [09.01.2008 15:54:32]

#

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..?

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta