Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [vb.net] Esempio ProgressBar in ListView

    Salve a tutti, ho trovato un po' di script in giro ma sinceramente non sono stato in grado di capire bene il funzionamento. Qualcuno può gentilmente aiutarmi? grazie anticipatamente

  2. #2
    Ciao..posta gli script che hai trovato e che non riesci a capire e vediamo se ti possiamo dare una mano..oppure esprimi il problema che hai incontrato.

    Ciao

  3. #3
    Public Function ListView_AddProgressBar(ByRef pListView As System.Windows.Forms.ListView, ByVal ListViewItemIndex As Integer, ByVal ColumnIndex As Integer) As System.Windows.Forms.ProgressBar
    Dim r As Rectangle
    Dim pb As New System.Windows.Forms.ProgressBar
    r = pListView.Items(ListViewItemIndex).Bounds()
    r.Width = pListView.Columns(ColumnIndex).Width
    If ColumnIndex > 0 Then
    r.X = r.X + pListView.Columns(ColumnIndex - 1).Width
    End If
    pb.Parent = pListView
    pb.SetBounds(r.X, r.Y, r.Width, r.Height)
    pb.Visible = True
    Return pb
    End Function

    questo è lo script trovato... il mio problema è quello di visualizzare un progressbar in una list view in modo da rendere un po la grafica accattivante e veloce. mi servirebbe creare in sostanza quelle list view come i programmi sharing che ti permettono di visualizzare lo stato del download... grazie

  4. #4
    Ti dico come si usa:
    codice:
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       ListView_AddProgressBar(ListView1, 1, 1)
        End Sub
    1° argom. --> nome della listview
    2° argom. --> indice dell'item dove vuoi la progress bar (cioè la riga..)
    3° argom. --> colonna dove vuoi la progress --> la 1a colonna non è considerata, quindi se lo vuoi lì devi mettere 0

    Inoltre devi impostare la proprietà della listview "View" = "Details" e funziona solo se ci sono elementi preesistenti nella listview (mi pare logico: se non ci sono item dove la disegna?!)..

    Per incrementare lo stato fai così:
    codice:
    pb.Increment(x)
    dove x è l'incremento --> x = 50 --> metà barra riempita (o vuota, dipende dai punti di vista..)
    Spero di esserti stato utile..

    Ciao

  5. #5
    se metto la colonna 7 per esempio il progressbar viene posizionato sempre alla colonna 2 e poi inoltre non rispetta la grandezza della colonna ma è decentrato.... nn è che potresti spedirmi proprio un file compilato di esempio?... cmq ti ringrazio
    PS: poi come posso stabilire l'altezza di una riga in list view ?

  6. #6
    Utente di HTML.it L'avatar di tippolo
    Registrato dal
    Dec 2005
    Messaggi
    103
    nn è che potresti spedirmi proprio un file compilato di esempio?... cmq ti ringrazio
    Perfetto! Senza mezzi termini. :berto:

  7. #7
    scusami ma che c'è di male??? :berto: :berto: :berto: :berto:

  8. #8
    Originariamente inviato da pacixone
    se metto la colonna 7 per esempio il progressbar viene posizionato sempre alla colonna 2 e poi inoltre non rispetta la grandezza della colonna ma è decentrato.... nn è che potresti spedirmi proprio un file compilato di esempio?... cmq ti ringrazio
    PS: poi come posso stabilire l'altezza di una riga in list view ?
    File compilato di esempio ?! Forse il progetto intendi.. Cmq non l'ho fatto..avevo semplicemente copiato il tuo script e nell'evento Load del form (per comodità) ho creato la progress bar.

    Stabilire l'altezza di una riga non ti serve, e comunque dovresti aprire un'altra discussione..

    Parli di decentramento: correggi la sub così:
    codice:
    Public Function ListView_AddProgressBar(ByRef pListView As System.Windows.Forms.ListView, ByVal ListViewItemIndex As Integer, ByVal ColumnIndex As Integer) As System.Windows.Forms.ProgressBar
            Dim r As Rectangle
            Dim pb As New System.Windows.Forms.ProgressBar
            r = pListView.Items(ListViewItemIndex).Bounds()
            r.Width = pListView.Columns(ColumnIndex).Width
            If ColumnIndex > 0 Then
                r.X = r.X + pListView.Columns(ColumnIndex - 1).Width
            End If
            pb.Parent = pListView
            pb.SetBounds(pListView.Columns(ColumnIndex).Width, r.Y, r.X, r.Height)
            pb.Visible = True
            Return pb
        End Function
    Ciao

  9. #9
    http://img70.imageshack.us/my.php?im...istviewln0.gif

    Public Function ListView_AddProgressBar(ByRef pListView As System.Windows.Forms.ListView, ByVal ListViewItemIndex As Integer, ByVal ColumnIndex As Integer) As System.Windows.Forms.ProgressBar
    Dim r As Rectangle
    Dim pb As New System.Windows.Forms.ProgressBar
    r = pListView.Items(ListViewItemIndex).Bounds()
    r.Width = pListView.Columns(ColumnIndex).Width
    If ColumnIndex > 0 Then
    r.X = r.X + pListView.Columns(ColumnIndex - 1).Width
    End If
    pb.Parent = pListView
    pb.SetBounds(pListView.Columns(ColumnIndex).Width, r.Y, r.X, r.Height)
    pb.Visible = True
    Return pb
    End Function

    Public Sub VisualizzaRecordXML()
    Dim contatore As Integer
    For contatore = 1 To Me.NumeroDiUsimRegistrate
    Dim ITEM(8) As String
    Dim L As ListViewItem
    ITEM(0) = ds.Tables(contatore - 1).Rows(0).Item("ID")
    ITEM(1) = ds.Tables(contatore - 1).Rows(0).Item("Numero3")
    ITEM(2) = ds.Tables(contatore - 1).Rows(0).Item("Profilo")
    ITEM(3) = ds.Tables(contatore - 1).Rows(0).Item("CreditoResiduo")
    ITEM(4) = ds.Tables(contatore - 1).Rows(0).Item("ParzialeMeseInCorsoSMS")
    ITEM(5) = ds.Tables(contatore - 1).Rows(0).Item("ParzialeMeseInCorsoEuro")
    If ds.Tables(contatore - 1).Rows(0).Item("ParzialeMeseInCorsoEuro") <> "Non disponibile" Then
    ITEM(6) = (CType(ds.Tables(contatore - 1).Rows(0).Item("ParzialeMeseInCorsoEuro"), Integer).ToString("n0") * 100 / Me.Importo_limite_supertuapiu).ToString("n0") & " %"
    Else
    ITEM(6) = "Valore 0"
    End If
    ITEM(7) = ds.Tables(contatore - 1).Rows(0).Item("DataUltimoAggiornamento")
    L = New ListViewItem(ITEM)
    Me.USIMElenco.Items.Add(L)
    ListView_AddProgressBar(Me.USIMElenco, 0, 7)
    Next
    End Sub

    questo è lo script trovato... il mio problema è quello di visualizzare un progressbar in una list view in modo da rendere un po la grafica accattivante e veloce. mi servirebbe creare in sostanza quelle list view come i programmi sharing che ti permettono di visualizzare lo stato del download...

    io sinceramente è la prima volta che mi trovo in questa situazione quindi non so' se mi conviene usare un list view oppure un datagrid view visto che i dati sono xml... cerco anche un cosiglio... grazie

  10. #10
    Invece di postare tutto, hai fatto ciò che ti ho detto già dalle prime risposte?
    Perchè a me funziona, ti ho postato anche lo script modificato per l'adattamento alla colonna e ti ho fatto vedere anche come si visualizza..

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.