Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - Imagelist
Forum - Visual Basic 6 - Imagelist

Avatar
mash_mash (Normal User)
Expert


Messaggi: 230
Iscritto: 25/07/2007

Segnala al moderatore
Postato alle 8:29
Mercoledì, 21/10/2009
Rieccomi , sto cercando di migliorare un programma , praticamente ho una array di Imagelist e un array di combo , selezionando un elemento dalla combo dovrebbe comparire un immagine in una picture .
Il codice sviluppato e' quello sottostante , peccato che però non viene visualizzata l'immagine. Perchè ?

Private Sub Combo1_Click(index As Integer)
Dim im As Image
Set im.Picture = ImageList1(index).ListImages.Item(Combo1(index).ListIndex + 1).Picture
Picture1.PaintPicture im.Picture, 0, 0
End sub

PM Quote
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 9:31
Mercoledì, 21/10/2009
Scusa ... e' sempre lo stesso programma di cui abbiamo gia' parlato ...

Quando lo hai postato e l'ho provato, l'immagine si vedeva ...

Adesso cosa e' successo ...?

Con il codice che mostri non si puo' fare nulla ... bisogna esaminare tutto il progetto e capire il problema ...

PM Quote
Avatar
mash_mash (Normal User)
Expert


Messaggi: 230
Iscritto: 25/07/2007

Segnala al moderatore
Postato alle 10:46
Mercoledì, 21/10/2009
quello che è successo è che documentandomi un po di più ho trovato il metodo IMAGELIST , che per quello che serve a me è perfetto.
Ho poi provato a buttare giù il codice postato ma purtroppo ol risultato non è quello atteso e non comprendo il problema.

PM Quote
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 12:42
Mercoledì, 21/10/2009
L' ImageList non e' un metodo ma un Controllo ... (lo preciso perche' c'e' tanta differenza tra i due concetti).

In ogni caso, serve il progetto completo per capire ...


PM Quote
Avatar
mash_mash (Normal User)
Expert


Messaggi: 230
Iscritto: 25/07/2007

Segnala al moderatore
Postato alle 13:23
Mercoledì, 21/10/2009
Ti allego il file , delucidami su dove ho sbagliato nel scrivere quel codice che a me sembrava giusto (ma non lo è) .
Grazie


mash_mash ha allegato un file: provaimagelist.zip (19188 bytes)
Clicca qui per scaricare il file
PM Quote
Avatar
muteblaster (Member)
Pro


Messaggi: 87
Iscritto: 16/07/2009

Segnala al moderatore
Postato alle 0:09
Giovedì, 22/10/2009
ho modificato un po' il odice da te' postato......
ho tolto  l'utilizzo della prorpieta' item nella imagelista, assegnado l'indice direttamente con l'index della combo aumentato di uno , non ho usato la variabile im e nenahce la proprieta' paintpicture della picturebox in quanto usata cosi' non va' bene.....se vuoi usare la proprieta' paintpicture va' usata diersamente.....

Codice sorgente - presumibilmente VB.NET

  1. Private Sub Combo1_Click(index As Integer)
  2.  Dim i As Integer
  3.  i = Combo1(index).ListIndex + 1
  4.  Picture1.Picture = ImageList1(index).ListImages(i).Picture
  5. End Sub

  

PM Quote
Avatar
mash_mash (Normal User)
Expert


Messaggi: 230
Iscritto: 25/07/2007

Segnala al moderatore
Postato alle 8:20
Giovedì, 22/10/2009
Con il vostro aiuto e la vs pazienza ho risolto così il mio problema :

Dim i As Integer
Dim varimmagine As Object
i = Combo1(index).ListIndex + 1
Set varimmagine = ImageList1(index).ListImages(i).Picture
Picture1.PaintPicture varimmagine, 0, 0

N.B. : per le mie necessità è necessario avere una variabile immagine e la proprietà paintpicture.

Grazie a tutti.

PM Quote