Vihdoin löysin täältä esimerkin miten luon silmukalla joukon dynaamisia kuvakehyksiä. Ilo loppui siihen kun en löydä millään konstia jolla voisin yhden kuvan klikkauksella vaikuttaa muihinkin kuviin (esim. kuvan vaihto). Tällä koodilla voin hallita yhtä kuvaa, mutten muita!
Private Sub Clikkaus(ByVal sender As Object, ByVal e As System.EventArgs)
Dim tunnus, kortin As String
Dim seuraava As Integer
tunnus = CType(sender, PictureBox).Name
kortin = CType(sender, PictureBox).Tag
Valmishertta.Image = CType(sender, PictureBox).Image
seuraava = tunnus + 7
CType(sender, PictureBox).Name = seuraava 'yritys siirtää ohjaus seuraavalle kuvakehykselle
TextBox17.Text = ("Painoit kuvakehystä " & tunnus)
viesti.Text = ("Kehyksessä on kortti nr:" & kortin)
viesti3.Text = ("Seuraava kortti " & seuraava)
valmispata.Image = CType(sender, PictureBox).Image
End SubJospa joku osaisi antaa esimerkin miten useamman Pictureboxin komentaminen yhdestä boxista onnistuisi.
Mod. korjasi kooditagit!
Jos vaihdat pictureboxin nimeä, niin se ei luonnollisesti vaikuta mitenkään muihin pictureboxeihin.
Ehdotan, että laitat ne dynaamisesti luomasi vaikka List(Of Picturebox) tyyliselle listalle, niin voit hakea mikä on sender-pictureboxin indeksi ja käyttää sitten listassa seuraavaa.
Tai sitten ihan vaan
Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click
'Siirtää klikatun ja kaikkien seuraavien pictureboksien vasemman laidan kohtaan 5
Dim ctrl As Control = sender
While Not ctrl Is Nothing
If TypeOf ctrl Is PictureBox Then
Dim boksi As PictureBox = ctrl
boksi.Left = 5
End If
ctrl = GetNextControl(ctrl, True)
End While
End SubKooditagi muuten suljetaan [/ -alkuisesti, nythän tuo sinun koodisi ei valitettavasti näy kooditagillisena.
Kiitos vihjeestä. Näyttäisi että pääsen sillä huomattavasti eteenpäin, ehkäpä aivan loppuun asti, vaikkakin aiemmista innostuksistani viisastuneena en ole enää yhtä varma että kaikki ratkeaa nyt! Näyttää usein siltä että, kun nokka irtoaa niin pyrstö tarttuu:)
Kiitos myös tagi vihjeestä. En varmaankaan lukenut ohjeita aivan kirjaimellisti.
Aihe on jo aika vanha, joten et voi enää vastata siihen.