Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: Sama tapahtuma monella objektilla

Sivun loppuun

tuomas [21.01.2004 14:33:18]

#

Jos esimerkiksi minulla on kymmenen kuvaa joita klikkaamalla pitäisi tapahtua sama asia niin pitää minun määritellä jokaiselle kuvalle tapahtuma erikseen vai voiko sen tehdä jollakin helpommalla tavalla?

kenkku [21.01.2004 14:35:27]

#

Tuo onnistuu aliohjelmilla. Katsoppas vaikka ensin tuo opas: https://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=vbo_5

tuomas [21.01.2004 14:50:30]

#

Ei menny ihan perille...
Siis tällänen pitäis saaha aikaan:
mulla on 10 kuvaa (Imagea) ja kun yhtä sellaista klikkaa
se klikattu kuva vaihtuu toiseksi (ohjelma lataa toisen kuvan siihen tilalle).
Kaikilla 10 imagella sama tapahtuma.
Ainoastaan klikatun kuva pitäis vaihtua.
Miten sais toimimaan?

hunajavohveli [21.01.2004 15:41:02]

#

Samaa olen itsekin miettinyt joskus. Pitäisi saada tehtyä jonkinlainen "oliomatriisi"
Muuttujat voi latoa matriiseihin, mutta voiko oliot? Jos on sata oliota ja pitäisi jokaista klikkaamalla saa ne vaikka katoamaan niin tosi hauska laittaa erikseen tokaiseen Subbiin.

Kuva1.Visible = False
Kuva2.Visible = False
Kuva3.Visible = False
Kuva4.Visible = False
Kuva5.Visible = False
Kuva6.Visible = False
Kuva7.Visible = False
Kuva8.Vis...
jne.

Tosi kätevä olis jos sais jonkun tällaisen

For a = 1 TO 100
Kuva(a).Visible = False
Next a

kaviaari [21.01.2004 16:23:18]

#

Voi latoa ja ne on komponetteja

kun kopioit komponentin ja liität valitse Yes tällöin matriisi lähtee kasautumaan

Antti Laaksonen [21.01.2004 16:27:47]

#

Kontrollit voivat siis olla samannimisiä, jos niiden Index-ominaisuuden arvo on eri. Sitten kontrolleja voi käsitellä juuri hunajavohvelin mainitsemalla tavalla. Samalla kontrolleihin liittyvät aliohjelmat muuttuvat niin, että niissä on mukana Index-parametri.

tnb [21.01.2004 18:35:55]

#

Muistaakseni meni näin:
Tee yksi kontrolli
Ota siitä Copy/paste kopio samalle formille
VB kysyy että tehdäänkö indeksoitu kotrolli, vastaa YES.
Nyt kun clikkaa mitä tahansa ko. indeksoitua kontrollia niin joutuu aina samaan ohjelmapätkään, jossa index muuttuja pitää sisällään tiedon, mitä kontrollia oli clikattu.
Kontrolli(index).visible =false ... jne
Samoin ulkoa voi antaa käskyjä: Kontrolli(3).visible=false

bob [21.01.2004 20:18:03]

#

tai for each...

tuomas [22.01.2004 14:23:52]

#

En saanut toimimaan...
Tarkotus ois ollu että vain klikattu kuva muuttuu.


Sivun alkuun

Vastaus

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

Tietoa sivustosta