Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [VB6] formattare il testo in ListView

    salve a tutti.
    Ho estratto dei dati dal database in questo modo:
    connessione
    set rec= new adodb.recordset
    rec.Open ("Select offerta, prezzo from tabella"),conn...

    Poi o impostato la ListView
    Dim LI as listitem
    With listview1.listitems
    Do While Not (rec.EOF)
    Set LI= .Add(,rec.fields("..."),rec.fields(".."))
    LI.Subitems(1)= rec.fields("..."), rec.fields("..."))
    Set LI= Nothing
    rec.MovenExt
    Loop
    End With

    chiudo connessione


    Vorrei che se la cella "offerta " nel database fosse compilata il testo nella listview docrebbe essere evidenziato o colorando lo sfondo della riga della listview o se non si può mi evidenziasse il testo ad esempio ingrassetto e in rorro.

    Mi potete dire come si fà?
    Grazie a tutti

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472

    Moderazione

    Ho spostato la discussione all'interno del forum dedicato a Visual Basic (VBx, VBA, ...) e ai linguaggi per .NET Framework (VB.NET, C#, ...).

    In futuro, poni in questo forum le domande relative a questi linguaggi.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Fai un tentativo in questo modo:
    codice:
     Dim i As Integer
            Dim LI As ListItem
            For i = 1 To listview1.ListItems.Count
                Set LI = listview1.ListItems(i)
                With LI
                    .ForeColor = rgb(255, 0, 0)
                    ' Devi attribuire il n° a mano:
                    .ListSubItems(10).ForeColor = rgb(30, 45, 250)
                    .ListSubItems(11).ForeColor = rgb(30, 45, 250)
                    .ListSubItems(12).ForeColor = rgb(30, 45, 250)
                    '  Devi attribuire il n° a mano:
                    .ListSubItems(13).ForeColor = rgb(255, 0, 0)
                    .ListSubItems(13).Bold = True
                    .ListSubItems(14).ForeColor = rgb(255, 0, 0)
                    .ListSubItems(15).ForeColor = rgb(255, 0, 0)
                End With
            Next
    LM

  4. #4
    scusa ma io sono un novello e non c'ho capito nulla su quello che mi hai pstato.

    Potresti riferirti al mio codice?

  5. #5
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Per individuare il ListSubItems vai a Proprietà di listview1>Intestazioni di Colonna>Index
    il numero che corrisponde alla colonna "offerta" -1 Così hai individuato il dato da colorare (nel colore che vuoi) e grassettare.
    Dopo aver popolato la LV inserisci questo codice:

    Dim i As Integer
    Dim LI As ListItem
    For i = 1 To listview1.ListItems.Count
    Set LI = listview1.ListItems(i)
    With LI
    ' Devi attribuire il l'indice -1 della colonna a mano (poniamo che sia 13):
    .ListSubItems(13).ForeColor = rgb(255, 0, 0)
    .ListSubItems(13).Bold = True
    End With
    Next

    Se vi sono altri ListSubItems da evidenziare inseriscili nella routine.
    Il codice lo puoi migliorare, questo è solo un esempio se vi sono molti ListSubItems da evidenziare.
    LM

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.