Imports System.IO
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim dir As New DirectoryInfo("C:\Nuova cartella")
For Each file As FileInfo In dir.GetFiles()
Try
ImageList1.Images.Add(Image.FromFile(file.FullName))
Catch ex As Exception
Throw New Exception("nessuna immagine")
End Try
Next
ListView1.View = View.LargeIcon
ImageList1.ImageSize = New Size(120, 100)
ListView1.LargeImageList = ImageList1
For j As Integer = 0 To Me.ImageList1.Images.Count - 1
Dim item As New ListViewItem()
item.ImageIndex = j
Me.ListView1.Items.Add(item)
Next
End Sub
End Class
ok nelle immagini che visualizzo vorrei che sotto venisse scritto il nome(tipo ciao.bmp)...come si fa?
grazie dell' aiuto ...sono nuovo quindi se ho sbagliato non arrabbiatevi...grazie a tutti
Ultima modifica effettuata da Bombervero il 08/08/2012 alle 10:13 |
|
Ultimo (Member)
Guru
Messaggi: 877
Iscritto: 22/05/2010
|
Cioè dove, nell'immagine stessa o in una label
If ok Then GOTO Avanza else GOTO Inizia
|
|
Bombervero (Normal User)
Newbie
Messaggi: 11
Iscritto: 08/08/2012
|
grazie dell' aiuto ...comunque io vorrei che apparisse il nome sotto l' immagine ...ti allego un esempio di quello che voglio fare
|
|
Renny (Normal User)
Expert
Messaggi: 231
Iscritto: 30/07/2011
|
Ciao..
Hai provato a guardare tutti gli overloads?
Ad esempio se fai
Codice sorgente - presumibilmente C# / VB.NET |
Dim Item As New ListViewItem(...)
|
Ci sono 22 overloads, che prevedono diversi argomenti. Tra gli ultimi mi sembra ci sia qualcosa per ottenere quello che vuoi tu.
Creato il tuo elemento item (1 per ogni foto)
basta che fai per inserirlo nella listview
Codice sorgente - presumibilmente Plain Text |
Me.ListView1.Items.Add(item)
|
Ciao |
|
Bombervero (Normal User)
Newbie
Messaggi: 11
Iscritto: 08/08/2012
|
grazie 1000 ma in quale parte del mio codice lo devo inserire?
|
|
Renny (Normal User)
Expert
Messaggi: 231
Iscritto: 30/07/2011
|
Ciao
Quando fai questo:
Codice sorgente - presumibilmente VB.NET |
For j As Integer = 0 To Me.ImageList1.Images.Count - 1 Dim item As New ListViewItem() item.ImageIndex = j Me.ListView1.Items.Add(item) Next
|
Modifica la creazione dell'oggetto Item con costruttore...
Tradotto:
Codice sorgente - presumibilmente C# / VB.NET |
Dim item As New ListViewItem(QUI inserisci i parametri per la creazione dell'oggetto)
|
Ti dirò, non ho provato ma sono riuscito a ottenere quello che serve a te aggiungendo un item alla listview facendo "modifica elementi" dalla finestra per disegnare il GDI. Sono certo che si possa inserire gli item con icona e testo anche da runtime, creando gli oggetti ListViewItem con le dovute proprietà |
|
Bombervero (Normal User)
Newbie
Messaggi: 11
Iscritto: 08/08/2012
|
Ok grazie ancora... ora provo
|
|
Bombervero (Normal User)
Newbie
Messaggi: 11
Iscritto: 08/08/2012
|
|
|
Renny (Normal User)
Expert
Messaggi: 231
Iscritto: 30/07/2011
|
Ciao...
Guarda che è facile...
Hai provato a compilare il codice che mi hai linkato?
In ogni caso se guardi l'istruzioni
Codice sorgente - presumibilmente Plain Text |
Image original = Bitmap.FromFile(jpgFiles[i]); '-> crea un oggetto immagine
Image thumbnail = createThumbnail(original, width, height); '->oggetto immagine riscalato
imageList1.Images.Add(thumbnail); '-> aggiunge l'immagine all'imagelist
listView1.Items.Add(jpgFiles[i], i); '->aggiunge un item alla listview
|
Si capisce bene cosa fa:
1) crea un array con i percorsi e i nomi dei file (jpgfiles)
2) crea un oggetto Anteprima-immagine a partire dal path e lo inserisce nel imagelist
3) aggiunge, col metodo add l'immagine alla listview passando 2 argomenti: il nome del file (preso dall'array) e l'indice dell'immagine contenuta nell'imagelist..
Mi pare chiaro..
Lui fa il passaggio di aggiungere le immagine alla imagelist una alla volta per inserirle con l'ordine dell'array, altrimenti (forse) non c'è la corrispondenza tra l'immagine mostrata e il nome del file.. Ma non ne sono certo..
|
|